AYUDA .NET

NPlot C# (Cómo funciona para desarrolladores)

Chipego
Chipego Kalinda
28 de enero, 2024
Compartir:

Este tutorial está diseñado para principiantes que desean explorar la integración de dos potentes bibliotecas: NPlot e IronPDF. Juntos forman un sólido conjunto de herramientas para crear y exportar gráficos en aplicaciones C#.

NPlot es una versátil biblioteca de gráficos en el .NET Framework, ideal para generar una amplia gama de gráficos y diagramas. Desde sencillos gráficos de líneas hasta complejos gráficos de dispersión, NPlot destaca en la visualización de datos basados en muestras y en la generación de gráficos dinámicos, tanto si trabaja con conjuntos de datos pequeños como con conjuntos de datos muy grandes.

IronPDF complementa a NPlot permitiendo la conversión de estos gráficos en documentos PDF. Tanto si se trata de contenido de correo electrónico HTML como de clases de trama específicas, IronPDF puede convertirlos en PDF de alta calidad.

Esta funcionalidad es especialmente útil para aplicaciones que requieren la generación de informes o la documentación de los datos analizados.

Primeros pasos con NPlot

Introducción a NPlot en .NET Framework

NPlot es una biblioteca dinámica de gráficos diseñada para .NET Framework, que satisface una amplia gama de necesidades de visualización de datos. Tanto si trabaja en aplicaciones de escritorio como en soluciones basadas en web, NPlot ofrece la funcionalidad necesaria para representar los datos de forma gráfica, clara y eficaz.

Instalar NPlot en Su Proyecto C

Para empezar a utilizar NPlot en su proyecto C#, necesita instalarlo. A continuación te explicamos cómo puedes añadir NPlot a tu aplicación fácilmente:

Usando NuGet Package Manager:

  1. En Visual Studio, vaya a "Herramientas" > "Gestor de paquetes NuGet" > "Gestionar paquetes NuGet para solución...".

  2. Busca 'NPlot' e instálalo en tu proyecto.

    NPlot C# (Cómo funciona para desarrolladores): Figura 1

Primeros pasos con NPlot

Una vez instalado NPlot, puede empezar a crear gráficos. La facilidad de uso de NPlot lo hace ideal para principiantes, ya que permite crear gráficos con unas pocas líneas de código.

Creación de un gráfico básico

Vamos a crear un simple gráfico de líneas como primer gráfico:

Configuración de la Superficie de Gráfico: Cree un objeto PlotSurface2D. Esto actúa como el lienzo para su parcela. Establezca algunas propiedades de visualización para personalizar su aspecto, como el color de fondo y el título.

Agregar datos al gráfico: Utilice la clase LinePlot de NPlot para crear un gráfico de línea. Añade valores de datos pertenecientes a una o varias categorías. Estos puntos de datos se representarán en el gráfico.

Mostrar el gráfico: Añade el gráfico de líneas a la superficie de la trama. Renderiza la superficie de trazado en un formulario o un control de usuario para su visualización.

using System;
using NPlot;

// Create a new bitmap plot surface
var plotSurface = new NPlot.Bitmap.PlotSurface2D(800, 600);

// Create a line plot
var linePlot = new LinePlot();
linePlot.AbscissaData = new double [] { 1, 2, 3, 4, 5 };
linePlot.OrdinateData = new double [] { 1, 4, 9, 16, 25 };

// Add the line plot to the plot surface
plotSurface.Add(linePlot);

// Customize the plot (e.g., titles, labels)
plotSurface.Title = "Sample Plot";
plotSurface.XAxis1.Label = "X-Axis";
plotSurface.YAxis1.Label = "Y-Axis";

// Refresh the plot to render it
plotSurface.Refresh();

// Save the plot as a PNG image
plotSurface.Bitmap.Save("c://plot.png", System.Drawing.Imaging.ImageFormat.Png);

Console.WriteLine("Plot saved as plot.png");
using System;
using NPlot;

// Create a new bitmap plot surface
var plotSurface = new NPlot.Bitmap.PlotSurface2D(800, 600);

// Create a line plot
var linePlot = new LinePlot();
linePlot.AbscissaData = new double [] { 1, 2, 3, 4, 5 };
linePlot.OrdinateData = new double [] { 1, 4, 9, 16, 25 };

// Add the line plot to the plot surface
plotSurface.Add(linePlot);

// Customize the plot (e.g., titles, labels)
plotSurface.Title = "Sample Plot";
plotSurface.XAxis1.Label = "X-Axis";
plotSurface.YAxis1.Label = "Y-Axis";

// Refresh the plot to render it
plotSurface.Refresh();

// Save the plot as a PNG image
plotSurface.Bitmap.Save("c://plot.png", System.Drawing.Imaging.ImageFormat.Png);

Console.WriteLine("Plot saved as plot.png");
Imports System
Imports NPlot

' Create a new bitmap plot surface
Private plotSurface = New NPlot.Bitmap.PlotSurface2D(800, 600)

' Create a line plot
Private linePlot = New LinePlot()
linePlot.AbscissaData = New Double () { 1, 2, 3, 4, 5 }
linePlot.OrdinateData = New Double () { 1, 4, 9, 16, 25 }

' Add the line plot to the plot surface
plotSurface.Add(linePlot)

' Customize the plot (e.g., titles, labels)
plotSurface.Title = "Sample Plot"
plotSurface.XAxis1.Label = "X-Axis"
plotSurface.YAxis1.Label = "Y-Axis"

' Refresh the plot to render it
plotSurface.Refresh()

' Save the plot as a PNG image
plotSurface.Bitmap.Save("c://plot.png", System.Drawing.Imaging.ImageFormat.Png)

Console.WriteLine("Plot saved as plot.png")
$vbLabelText   $csharpLabel

Esta es la imagen del gráfico de salida:

NPlot C# (Cómo funciona para desarrolladores): Figura 2

Técnicas avanzadas de gráficos con NPlot

Después de dominar los gráficos básicos, NPlot ofrece una gama de tipos de gráficos más complejos para mejorar sus capacidades de visualización de datos. Entre ellos se incluyen los gráficos de barras, de dispersión y de pasos, cada uno adecuado para distintos tipos de representación de datos.

Gráficos de barras y de dispersión

Gráfico de barras: Ideal para mostrar valores de datos en una o más categorías. Cada barra representa un valor de datos, y su altura indica la magnitud del valor.

Diagrama de Dispersión: Perfecto para visualizar conjuntos de datos donde cada punto de datos es independiente. Representa puntos de datos en un gráfico bidimensional, lo que permite analizar patrones o tendencias.

Implementación de una trama escalonada

Gráfico de Escalones: Utilizado para datos que involucran valores de abcisas sucesivos, como datos de series temporales. Crea una representación en forma de escalera, mostrando claramente los cambios entre puntos de datos sucesivos.

Integración de NPlot con IronPDF

La integración de NPlot con IronPDF permite convertir sin problemas gráficos en documentos PDF. IronPDF es una potente biblioteca que permite convertir contenidos HTML y clases de trazado en archivos PDF de alta calidad. Esta integración es especialmente útil para las aplicaciones que requieren generar informes o documentar los datos analizados.

Comience con IronPDF

Comience a usar IronPDF en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer


Instalar la biblioteca IronPDF

Instalación mediante el gestor de paquetes NuGet

Para integrar IronPDF en su proyecto NPlot C# utilizando el gestor de paquetes NuGet, siga estos pasos:

  1. Abra Visual Studio y, en el explorador de soluciones, haga clic con el botón derecho del ratón en su proyecto.

  2. Seleccione "Gestionar paquetes NuGet..." en el menú contextual.

  3. Vaya a la pestaña Examinar y busque IronPDF.

  4. Seleccione la biblioteca IronPDF en los resultados de la búsqueda y haga clic en el botón de instalación.

  5. Acepte cualquier solicitud de acuerdo de licencia.

    Si desea incluir IronPDF en su proyecto a través de la consola del gestor de paquetes, ejecute el siguiente comando en la consola del gestor de paquetes:

Install-Package IronPdf

Buscará e instalará IronPDF en su proyecto.

Instalación mediante el sitio web de NuGet

Para obtener una descripción detallada de IronPDF, incluidas sus características, compatibilidad y opciones de descarga adicionales, visite la página de IronPDF en el sitio web de NuGet en https://www.nuget.org/packages/IronPdf.

Instalar mediante DLL

Alternativamente, puede incorporar IronPDF directamente en su proyecto utilizando su archivo dll. Descargue el archivo ZIP que contiene el DLL desde la Página de Descarga de IronPDF. Descomprímelo e incluye la DLL en tu proyecto.

Generación de gráficos dinámicos con NPlot

NPlot destaca en la creación de gráficos dinámicos y visualmente atractivos dentro de aplicaciones C#. Esta sección le guiará a través de la generación de un gráfico de dispersión, un caso de uso típico para la visualización de datos con dos variables.

Los gráficos de dispersión son especialmente eficaces para visualizar la relación entre las variables. Sigue estos pasos para crear un gráfico de dispersión:

  1. Iniciar Superficie de Gráfica: Comienza creando una instancia de PlotSurface2D.

  2. Preparar Datos: Reúna los valores de datos que desea graficar. Los gráficos de dispersión trazan puntos individuales, por lo que necesitarás dos matrices de valores: una para las coordenadas x y otra para las coordenadas y. Puedes añadir tantos gráficos como desees al PlotSurface2D.

  3. Instanciar un diagrama de dispersión: Usa la clase PointPlot o ScatterPlot de NPlot para crear tu gráfico con tus objetos de parcela.

  4. Personalizar el gráfico: Aplica diversas personalizaciones como establecer los estilos de los puntos, colores y propiedades de los ejes para hacer que el gráfico sea informativo y atractivo.
var plotSurface = new NPlot.Windows.PlotSurface2D();
var scatterPlot = new PointPlot();
scatterPlot.AbscissaData = new double [] { /* x-coordinates */ };
scatterPlot.OrdinateData = new double [] { /* y-coordinates */ };
plotSurface.Add(scatterPlot);
// Additional code to render the plotSurface
var plotSurface = new NPlot.Windows.PlotSurface2D();
var scatterPlot = new PointPlot();
scatterPlot.AbscissaData = new double [] { /* x-coordinates */ };
scatterPlot.OrdinateData = new double [] { /* y-coordinates */ };
plotSurface.Add(scatterPlot);
// Additional code to render the plotSurface
Dim plotSurface = New NPlot.Windows.PlotSurface2D()
Dim scatterPlot = New PointPlot()
scatterPlot.AbscissaData = New Double () {}
scatterPlot.OrdinateData = New Double () {}
plotSurface.Add(scatterPlot)
' Additional code to render the plotSurface
$vbLabelText   $csharpLabel

Convertir gráficos a PDF con IronPDF

Una vez que haya creado un gráfico con NPlot, puede utilizar IronPDF para convertir este gráfico en un documento PDF. Este proceso consiste en representar el gráfico como una imagen y, a continuación, utilizar IronPDF para incrustar esta imagen en un PDF. Puedes seguir estos pasos para convertir gráficos a PDF:

  1. Renderizar gráfico como imagen: Primero, convierta su gráfico de NPlot a un formato de imagen. Esto se puede hacer dibujando el PlotSurface2D en un mapa de bits.

  2. Crea PDF con IronPDF: Usa la API de IronPDF para crear un nuevo documento PDF e insertar la imagen del gráfico.
// Assuming 'chartImage' is the Bitmap of your NPlot chart
var imageFiles = new string [] { chartImagePath };
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("Chart.pdf");
// Assuming 'chartImage' is the Bitmap of your NPlot chart
var imageFiles = new string [] { chartImagePath };
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("Chart.pdf");
' Assuming 'chartImage' is the Bitmap of your NPlot chart
Dim imageFiles = New String () { chartImagePath }
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("Chart.pdf")
$vbLabelText   $csharpLabel

Conclusión

NPlot C# (Cómo funciona para desarrolladores): Figura 3

A lo largo de este tutorial, hemos explorado la integración de dos potentes librerías en C#: NPlot para crear gráficos dinámicos basados en datos a partir de elementos dependientes de datos, e IronPDF para convertir estos gráficos en documentos PDF.

Esta combinación proporciona a los desarrolladores de C# un completo conjunto de herramientas que les permite visualizar datos de forma eficaz y, a continuación, convertirlos sin problemas a un formato de archivo que se pueda compartir.

Comienza con la Licencia de Prueba Gratuita de IronPDF, disponible desde $749.

Chipego
Ingeniero de software
Chipego tiene una habilidad natural para escuchar que le ayuda a comprender los problemas de los clientes y a ofrecer soluciones inteligentes. Se unió al equipo de Iron Software en 2023, después de estudiar una licenciatura en Tecnología de la Información. IronPDF e IronOCR son los dos productos en los que Chipego se ha centrado, pero su conocimiento de todos los productos crece día a día, a medida que encuentra nuevas formas de ayudar a los clientes. Disfruta de lo colaborativa que es la vida en Iron Software, con miembros del equipo de toda la empresa que aportan su variada experiencia para contribuir a soluciones eficaces e innovadoras. Cuando Chipego está lejos de su escritorio, a menudo se le puede encontrar disfrutando de un buen libro o jugando al fútbol.
< ANTERIOR
C# Struct vs Class (Cómo funciona para los desarrolladores)
SIGUIENTE >
Reflexión en C# (Cómo Funciona para Desarrolladores)