You are on page 1of 19

Super 2d/3d Graph Library

Edicin .NET Versin 7.0

Componente de Interfaz de Usuario para el dibujado de grficas] para WinForms y ASP.NET

2006 Software Siglo XXI


www.softwaresigloXXI.com
H TU UT UT H

Correo electrnico: contact@softwaresigloXXI.com


H TU UT UT H

Super 2d/3d Graph Library Reference

Introduccin
Super2d3dGraphLibrary es un control de usuario nativo de .NET para el dibujado de grficas. A partir de la versin 4 puede utilizarse tanto como control de formulario Winform como en pginas ASP.NET. Super2d3dGraphLibrary admite un alto grado de personalizacin a travs de sus propiedades que le permiten mostrar u ocultar los diversos elementos que componen una grfica con el aspecto que desee. En la versin actual los siguientes tipos de grficas estn soportadas: columnas, columnas acumuladas, rea, puntos, lneas y tarta. Este documento explica de forma resumida el funcionamiento de cada control y sus mtodos y propiedades. Si necesita ayuda sobre algn control o desea transmitir una sugerencia, visite www.softwaresigloXXI.com para ms informacin.
H TU UT UT H

Funcionalidad general (versin 2.0): Muestra en el formulario el grfico de forma rpida y segn las propiedades que establecen sus valores y aspecto grfico. Permite especificar la resolucin del bitmap generado (por defecto, la resolucin de pantalla). Permite exportar el bitmap a uno de los siguientes formatos: BMP, GIF, JPG, PNG, TIFF y WMF. La posibilidad de exportar el bitmap junto con la posibilidad de especificar una resolucin mayor, permite imprimir el grfico la calidad de impresin que se desee. Posibilidad de mostrar/ocultar tabla de datos, leyenda, divisores horizontales, verticales y valores. Posibilidad de asignar estilos de lneas, colores, gradientes y fuentes. Varios estilos de grficas en 2d y 3d. o 2d: barras, lneas, puntos, acumulados, rea, tarta. o 3d: barras, columnas, rea, lneas y tarta. Refresco automtico o manual al cambiar una propiedad del grfico. Animacin: una nica llamada a la funcin permite animar el grfico desde cero hasta los valores indicados. Posibilidad de especificar la inclinacin en los ejes X e Y para grficas 3D. Muestra opcionalmente la lnea de superficie (valor 0) en grficas 3D (slo barras). Permite mostrar o no las paredes en una grfica 3D (salvo tarta). Nuevas funciones en versin 3.0: Permite especificar un color y un estilo de gradiente para el fondo del grfico. Posibilidad de mostrar sobre el grfico una lnea que representa un clculo adicional del tipo media aritmtica (recta o spline) o PARETO. Muestra/oculta valores en el eje X. Nuevos estilos de grficas 2d: high-low, high-low-close, candlestick y spline. Posibilidad de indicar la ubicacin de los valores: normal o dentro de la barra. Nuevos eventos. Nuevas funciones en versin 4.0: Mejorados algunos aspectos menores generales. Posibilidad de utilizarse en aplicaciones web ASP.NET. Nueva aplicacin de ejemplo ASP.NET.
Page 2 of 19

Super 2d/3d Graph Library Reference

Nuevas funciones en versin 5.0: Dos nuevos tipos de grficas: disperso y burbuja. Posibilidad de especificar el estilo de relleno de la rejilla (transparentes, bandas o tablero ajedrez). Mejoras estticas en la tabla de datos y posibilidad de indicar color de texto y fondo Cuando los valores se muestran dentro de las barras ahora se dibujan de abajo a arriba y en cursiva para facilitar la lectura Nuevas propiedades para el estilo de puntos (PointSize y PointStyle). Mejoras en el trazado de lneas grficas (se evitan picos) Antisolapado de etiquetas (nuevo valor para ValuesLocationStyle) Nuevas funciones en versin 5.5: Se pueden girar las etiquetas de los ejes (XAxisLabelsRotated y YAxisLabelsRotated) Mejor presentacin para textos (la propiedad Quality ahora afecta tambin a las etiquetas y valores; el valor HighQuality activa el efecto ClearType para los textos) Remarca automticamente los valores mximo (MarkHighest) y mnimo (MarkLowest) Corregidos varios problemas e introducidas algunas mejoras menores en algunas grficas Nuevas funciones en versin 6.0: Nuevos tipos de grficas: pirmide y de imgenes Nuevos estilos de gradiente de fondo Puede especificar formato de nmero para ambos ejes Elija entre escala automtica o fija para cada eje La rejilla soporta imgenes de fondo con nivel de transparencia Grficas de tarta mejoradas con posibilidad de separar sectores (2D/3D) Nuevas funciones en versin 6.5: Nuevo tipo de grfica: Doughnut o Anillo (2D y 3D con posibilidad de separar sectores) Puede cambiar el texto al ttulo Datatable o Legend (DataTableText y LegendText) Puede asignar ttulos a los ejes X e Y (YAxisTitle, YAxisTitleFont, XAxisTitle, XAxisTitleFont) Puede indicar la posicin de la leyenda (LegendAlignment) Profundidad de la tarta / doughtnut / anillo variable (Depth) Indique el tamao del agujero en grficas doughnut / anillo (HoleSize) Remarque los valores agregando puntos en las grficas de lnea, spline o rea (ShowPoints). Nuevas funciones en versin 7.0: Nuevos tipos de grficas: Cilindros 2D/3D, Curvas 3D (spline 3D), Barras redondeadas 2D, reas curvas (3D) , reas curvas acumuladas (3D). Mejorado el tipo de grfica de reas 3D Nuevos clculos adicionales: lnea superior, spline superior Correccin de perspectiva en la grfica donut 3D Cuadro de dilogo integrado para cambiar estilos y opciones en tiempo de ejecucin por parte del usuario de forma sencilla Soporte de idiomas ingls y espaol Otras correcciones y mejoras menores Por favor, consulte la pgina www.softwaresigloxxi.com para ms informacin actualizada!
H TU UT UT H

Page 3 of 19

Super 2d/3d Graph Library Reference

Cmo utilizar el componente en Visual Studio .NET


Nota importante: Para facilitar el uso del componente, recomendamos agregarlo al GAC (Global Assembly Cache) con la utilidad gacutil del .NET Framework de la siguiente forma: Gacutil i Super2d3dGraphLibrary.dll Si instala el .msi, el instalador se encarga de hacer esto por Ud., pero si instala la DLL manualmente en otro equipo le recomendamos registrarla de esta forma. Proyectos de aplicaciones para Windows: Para utilizar el control de usuario en un formulario de Windows (WinForm) basta con aadirlo a la paleta de controles desde Visual Studio .NET pulsando con botn derecho sobre la paleta de controles y seleccionando agregar o quitar elementos, como muestra la figura siguiente:

A continuacin, si hemos registrado el componente con la herramienta gacutil debera mostrarse en la lista de componentes disponibles. Si no es as, pulsar sobre el botn Examinar, localizar el archivo Super2d3dGraphLibrary.dll y ya podr ver el componente en la paleta, listo para ser arrastrado al formulario:

Page 4 of 19

Super 2d/3d Graph Library Reference

Super2d3dGraphLibrary admite un alto grado de personalizacin a travs de sus propiedades que le permiten mostrar u ocultar los diversos elementos que componen una grfica con el aspecto que desee. En la versin actual los siguientes tipos de grficas estn soportadas: columnas, columnas acumuladas, rea, puntos, lneas y tarta. Proyectos de aplicaciones ASP.NET (aplicacin web): En aplicaciones ASP.NET, el funcionamiento del componente es diferente, ya que no se provee de una interfaz Web Control, sino que ha de hacerse mediante cdigo. Por ejemplo, supongamos que desea mostrar una grfica en la pgina webform1.aspx. En esta pgina basta con incluir un elemento HTML de tipo imagen cuya fuente sea una pgina aspx que renderice el grfico. Es decir, en webform1.aspx tan slo tendra que incluir donde desee: <img src="SampleChart.aspx">

SampleChart.aspx ser una pgina aspx que instanciar el componente Super2d3dGraphLibrary y crear el grfico en tiempo real, sin generar archivos temporales y devolviendo el JPG o GIF con el grfico a webform1.aspx.
En la pgina siguiente incluimos un ejemplo tipo de SampleChart.aspx (tambin puede consultar la aplicacin demo para ASP.NET descargable desde http://www.softwaresigloxxi.com)

Page 5 of 19

Ejemplo de SampleChart.aspx:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim oGraph As New Super2d3dGraphLibrary.Super2D3dGraph ' First, create a sample 2d Bar chart ' Get some random values ... Dim arrSeries(1) As ArrayList For k As Integer = 0 To UBound(arrSeries) arrSeries(k) = New ArrayList For j As Integer = 0 To 5 arrSeries(k).Add(Rnd() * 1000 - 500) Next Next ' Assign properties to Super2d/3dGraphLibrary control ... With oGraph ' All of the following lines are optional, change them as needed; from here... .AutoRefresh = False ' This prevents internal buffer to be painted after each property changes .Series = arrSeries ' Assign previous random values to the chart control .Title = "2d Bar Chart" ' Title of the chart .SeriesLegend = New String() {"Apples", "Pearls"} ' Names for each serie .Style = Super2d3dGraphLibrary.STYLE2D3D.STYLE2D_BAR ' 2d bar classic chart .Width = 450 ' Chart width .Height = 300 ' Char height .BackColor = Color.LightYellow ' Background color .BackStyle = Super2d3dGraphLibrary.STYLEBACKGROUND.STYLEBACKGROUND_GRADIENT_INVERTED .Calculation = Super2d3dGraphLibrary.CALCULATION.CALCULATION_AVERAGE_SPLINE ' Calculate an average spline and draw it .ValuesLocationStyle = Super2d3dGraphLibrary.STYLECAPTIONLOCATION.STYLECAPTIONLOCATION_INSIDE ' Put values inside the bars .ShowDataTable = False ' Don't need to show the datatable this time .CastShadows = True ' Add a subtle shadow to each bar .Quality = Drawing2D.SmoothingMode.HighQuality ' Best result ' ... to here. .RefreshChart() End With ' Now, let's output the drawn chart... ' Draw the chart on an internal buffer

Super 2d/3d Graph Library Reference


' Change the response headers to output a JPEG image. Response.Clear() Response.ContentType = "image/jpeg" ' Write the image to the response stream in JPEG format. oGraph.BackgroundImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) ' Dispose of the graph control oGraph.Dispose() End Sub

Page 7 of 19

Propiedades
Versin Miembro 2 AutoRefresh Tipo Boolean Descripcin
Establece si se vuelve a dibujar el grfico al modificar cualquier propiedad del mismo. Por defecto es TRUE. Si est a falso, es necesario llamar a RefreshChart para que se vuelva a dibujar el grfico.

Valor por defecto True

3 3

BackColor BackStyle

System. Drawing.Color
STYLEBACKGROUND

Color para el fondo del grfico Estilo para el fondo del grfico. Puede valer:
STYLEBACKGROUND_SOLID = 0 STYLEBACKGROUND_GRADIENT = 1 STYLEBACKGROUND_GRADIENT_INVERTED = 2

Color.White
STYLEBACKGROUND_SOLID

1 5 7 7 3

BorderColor BubbleMaxSize BuiltinDialogAllowed BuiltinDialogLanguage Calculation

System. Drawing.Color Long Boolean

LANGUAGE CALCULATION

Color para el borde Tamao mximo en pixels para la burbuja Si se permite que aparezca el men contextual al pulsar con botn derecho sobre el grfico (slo WinForms) Idioma del men contextual Tipo de clculo adicional a mostrar sobre el grfico:
CALCULATION_NONE = 0 CALCULATION_AVERAGE = 10 CALCULATION_AVERAGE_SPLINE = 11 CALCULATION_PARETO = 20

Color.Red 100 True

LANGUAGE.LANG_ENGLISH CALCULATION_NONE

3 1 5 5 6.5 6 6 6.5

CalculationLineStyle CastShadows DataTable BackColor DataTableColor Depth GridBackgroundImage GridBackgroundImage Transparency HoleSize

Pen

Boolean

Color Color Integer

Image Integer Integer

Estilo de lnea para el clculo adicional indicado por Calculation Muestra/Oculta una sombra debajo de las grficas (se ignora para los tipos de grfica de lineas y puntos) Color para el fondo de la tabla de datos Color para el texto de la tabla de datos Profundidad de la tarta Imagen a mostrar como fondo de la rejilla Porcentaje de transparencia de la imagen de fondo (0= opaco, 100=transparente) Tamao del agujero central en una grfica de

New Pen(Color.Blue, 3)

False

Color.White Color.Black 30

Nothing 0 30

Super 2d/3d Graph Library Reference doughnut (Donut) o anillo Devuelve la imagen del grfico Ttulos de los elementos para el eje X Vaco Asigna cualquier texto a cualquier elemento del Empty array para separar el sector de la grfica de tartas. Por ejemplo, ItemsHighlight(3) = separar producira que el elemento 3 de la grfica se muestra separado del resto. Puedes asignar cualquier texto ya que de momento no se utiliza, pero en futures versiones el texto podra mostrarse sobre el sector separado para describir ms informacin sobre el elemento. STYLEALIGNMENT. Posicin de la leyenda si se muestra
STYLEALIGNMENT_MIDDLE_RIGHT

1 2 6

Image ItemsLegend ItemsHightlight

Bitmap String() String()

6.5 2 5 5.5 5.5 5 5 2 1 1 1 1

LegendAlignment LegendColor LicenseeIdentifier MarkHighest MarkLowest PointStyle PointSize Quality Resolution Series SeriesColor SeriesFillStyle

STYLEALIGNMENT Color Long Boolean Boolean STYLEPOINT Integer System.Drawing. Drawing2d. SmoothingMode Long ArrayList Array de Drawing.Color Array de Drawing.Brush

Color para la leyenda Nmero identificativo del usuario o empresa que ha adquirido la licencia de la librera Muestra el valor mximo con fondo amarillo y texto azul Muestra el valor mnimo con fondo rojo y texto en amarillo Tipo de punto Tamao del punto Calidad del trazado Resolucin en puntos por pulgada (ppp) Lista de arrays que contienen los valores para cada serie. Para el tipo de grfica tarta, slo se tiene en cuenta la primera serie. System. Array con el color de cada serie. Para el tipo tarta, cada color se corresponde con uno de los valores System. Contiene un brush para cada serie (slo para el tipo de grfica de puntos)

0 False False STYLEPOINT_CIRCLE 4 Default 72 (2 series con 8 valores cada una aleatorios) Aleatorio

Page 9 of 19

Super 2d/3d Graph Library Reference 1 1 6 1 1 2 1 6.5 2 1 1 3 2 2 1 7 1 1 1 2 2 2 SeriesLegend SeriesLineStyle SeriesPicture ShowDataTable ShowDividerX ShowItemsLegend ShowLegend ShowPoints ShowSurface3d ShowSolidColors ShowValues ShowXAxis SlantX SlantY Style Thickness Title TitleFont TitleColor ValuesBackColor ValuesColor ValuesFont Array de String Array de Drawing.Pen Array de Image Boolean Boolean Boolean Boolean Boolean Boolean Boolean Boolean Boolean Single Single
STYLE2D3D

Nombre de cada serie System. Estilos de lnea para el tipo de grafica de lneas Contiene una imagen por cada serie de la grfica. Debe ser utilizado en el tipo de grfica de imgenes (STYLE2D_PICTURES). Muestra/Oculta una tabla en la parte inferior con los valores para cada serie Muestra/Oculta lneas de divisin para cada valor de serie (lneas verticales) Si muestra los nombres de los elementos del eje X Muestra/Oculta la leyenda en la parte inferior derecha Si se aaden puntos o marcas extra en las grficas de lneas, spline o rea Muestra/Oculta la lnea de superficie en grfica 3d de barras. Muestra el grfico con un rellenado slido o un gradiente segn los colores asignados a las series Muestra/Oculta los valores para cada serie en el propio grfico Muestra/Oculta valores para el eje X Desplazamiento horizontal para el efecto 3D Desplazamiento vertical para el efecto 3D Muestra el grfico segn este estilo Grosor de los cilindros 3D Ttulo del grfico Fuente del ttulo Color del ttulo Color para el fondo de los valores Color para los valores Fuente de los valores

True True False True True False False True True 30 30 STYLE2D_BAR 30 Title Color.Black Color.Orange Color.Black

Integer String System. Drawing.Font System. Drawing.Color System. Drawing.Color System. Drawing.Color System. Drawing.Font

Page 10 of 19

Super 2d/3d Graph Library Reference 2 3 2 5 5 5 2 5.5 6 6 ValuesFormat ValuesLocationStyle ValuesStyle WallsBackStyle WallsBackColor Principal WallsBackColor Secondary WallStyle XAxisLabelsRotated XAxisNumericFormat XAxisScaleMode String STYLECAPTIONLOCATION STYLECAPTION
STYLEWALLBACKGROUND Color Color STYLEWALLS

Cadena de formato para los valores Especifica la ubicacin de los valores Estilo para los valores Estilo de relleno para la rejilla Color principal para el relleno de la rejilla Color secundario para el relleno de la rejilla Estilo para los muros del grfico 3d Muestra las etiquetas del eje X giradas 45 Expresin de formato para los valores del eje X (use 0 para mostrar nicamente valores enteros, sin decimales) Tipo de escala para el eje X (automtico o fijo). Si se emplea el tipo fijo, use las propiedades XAxisScaleMinimum y XAxisScaleMaximum para especificar el rango. Valor mximo para la escala del eje X. Valor mnimo para la escala del eje Y. Ttulo para el eje X Fuente para el ttulo del eje X Nmero de divisores horizontales. Si se asigna un 0 (cero), no se muestra ningn divisor horizontal Muestra las etiquetas del eje Y giradas 45 Expresin de formato para los valores del eje Y (use 0 para mostrar nicamente valores enteros, sin decimales) Tipo de escala para el eje Y (automtico o fijo). Si se emplea el tipo fijo, use las propiedades YAxisScaleMinimum y YAxisScaleMaximum para especificar el rango. Valor mximo para la escala del eje Y.

N
STYLECAPTIONLOCATION_DEFAULT STYLECAPTION_ROUNDED_SQUARE STYLEWALLBACKGROUND_BANDS Color.FromArgb(64, 148, 232, 255) Color.FromArgb(128, 148, 232, 255) STYLEWALLS_NOWALLS

Boolean String SCALEMODE

False N SCALEMODE.AUTOMATIC

6 6 6.5 6.5 1 5.5 6 6

XAxisScaleMaximum XAxisScaleMinimum XAxisTitle XAxisTitleFont YAxisDividersCount YAxisLabelsRotated YAxisNumericFormat YAxisScaleMode

Single Single String Font Long Boolean String SCALEMODE

0 0
Font("Arial", FontStyle.Bold, GraphicsUnit.Point) 11,

10 False N SCALEMODE.AUTOMATIC

YAxisScaleMaYimum

Single

0
Page 11 of 19

Super 2d/3d Graph Library Reference 6 6.5 6.5 YAxisScaleMinimum YAxisTitle YAxisTitleFont Single String Font Valor mnimo para la escala del eje Y. Ttulo para el eje Y Fuente para el ttulo del eje Y 0
Font("Arial", FontStyle.Bold, GraphicsUnit.Point) 11,

Mtodos
Versin Miembro Parmetros Descripcin Muestra una animacin de la grfica partiendo del valor 0 para cada serie hasta llegar al valor indicado originalmente. 2 Animate Ninguno. Refresca el grfico. 2 RefreshChart Ninguno.

Eventos
Versin 3 3 3 Nombre BeginPaint BeforeEndPaint AfterPaint Parmetros g as graphics G as graphics G as graphics Descripcin
Se produce cuando se limpia el contenido del control y antes de empezar a dibujar nada Se produce justo antes de actualizar la imagen del control Se produce tras actualizar la imagen del control

Cdigo de ejemplo VB.NET (Windows Application)


Para utilizar el control de usuario se debe aadir a la paleta de controles manualmente, pulsando sobre botn derecho en la paleta, elegir agregar componente y pulsar sobre examinar (elegir del disco el archivo Super2d3dGraphLibrary.dll). Una vez realizado esto podremos arrastrarlo a cualquier formulario.

Page 12 of 19

Super 2d/3d Graph Library Reference Toda grfica require que se proporcionen unos valores mediante la propiedad Series (Series representa a todas las series y cada serie contiene al menos un elemento o valor). El tipo de la propiedad Series es Array de ArrayList. Es un Array porque representa a todas las series. Cada elemento del array (una serie) es de tipo ArrayList y al ArrayList se le puede agregar cualquier valor. Los tipos de grficas normales slo requieren un valor de tipo double por cada elemento de la grfica (valor Y en el grfico). Por ejemplo, el tipo de grfica columnas slo requiere conocer la altura de cada columna para poderse dibujar. Otros tipos de grficas, como High-Low y Scatter, requieren que cada serie est compuesta de arrays bidimensionales (x,y) en lugar de un solo Double, mientras que los tipos High-Low-Close y Bubble requieren arrays tridimensionales (x,y,z). El tipo candlestick requiere cuatro dimensiones (mnimo, mximo, apertura y cierre). El tipo de grficas candlestick tambin se denomina "stock chart. El siguiente cdigo asume que el control de usuario del formulario se llama oGraph. Esta plantilla de cdigo de puede utilizar para cualquier tipo de grficas de una dimensin (barras, lneas, puntos, etc. pero no high-low, high-low-close, candlestick, scatter o bubble) porque como vemos en la lnea en negrita se aade al ArrayList un nico valor aleatorio y no un array.
' Get some random values ... Dim arrSeries(1) As ArrayList For k As Integer = 0 To UBound(arrSeries) arrSeries(k) = New ArrayList For j As Integer = 0 To 5 arrSeries(k).Add(Rnd() * 1000 - 500) Next Next With oGraph ' All of the following lines are optional, change them as needed; from here... .AutoRefresh = False ' This prevents internal buffer to be painted after each property changes .Series = arrSeries ' Assign previous random values to the chart control .Title = "2d Bar Chart" ' Title of the chart .SeriesLegend = New String() {"Apples", "Pearls"} ' Names for each serie .Style = Super2d3dGraphLibrary.STYLE2D3D.STYLE2D_BAR ' 2d bar classic chart .Width = 450 ' Chart width .Height = 300 ' Char height .BackColor = Color.LightYellow ' Background color .BackStyle = Super2d3dGraphLibrary.STYLEBACKGROUND.STYLEBACKGROUND_GRADIENT_INVERTED .Calculation = Super2d3dGraphLibrary.CALCULATION.CALCULATION_AVERAGE_SPLINE an average spline and draw it

' Calculate
Page 13 of 19

Super 2d/3d Graph Library Reference


.ValuesLocationStyle = Super2d3dGraphLibrary.STYLECAPTIONLOCATION.STYLECAPTIONLOCATION_INSIDE ' Put values inside the bars .ShowDataTable = False ' Don't need to show the datatable this time .CastShadows = True ' Add a subtle shadow to each bar .Quality = Drawing2D.SmoothingMode.HighQuality ' Best result ' ... to here. .RefreshChart() End UIT ' Draw the chart on an internal buffer

Page 14 of 19

Super 2d/3d Graph Library Reference

Cdigo de ejemplo C# (Windows Application)


Para utilizar el control de usuario se debe aadir a la paleta de controles manualmente, pulsando sobre botn derecho en la paleta, elegir agregar componente y pulsar sobre examinar (elegir del disco el archivo Super2d3dGraphLibrary.dll). Una vez realizado esto podremos arrastrarlo a cualquier formulario. Toda grfica require que se proporcionen unos valores mediante la propiedad Series (Series representa a todas las series y cada serie contiene al menos un elemento o valor). El tipo de la propiedad Series es Array de ArrayList. Es un Array porque representa a todas las series. Cada elemento del array (una serie) es de tipo ArrayList y al ArrayList se le puede agregar cualquier valor. Los tipos de grficas normales slo requieren un valor de tipo double por cada elemento de la grfica (valor Y en el grfico). Por ejemplo, el tipo de grfica columnas slo requiere conocer la altura de cada columna para poderse dibujar. Otros tipos de grficas, como High-Low y Scatter, requieren que cada serie est compuesta de arrays bidimensionales (x,y) en lugar de un solo Double, mientras que los tipos High-Low-Close y Bubble requieren arrays tridimensionales (x,y,z). El tipo candlestick requiere cuatro dimensiones (mnimo, mximo, apertura y cierre). El tipo de grficas candlestick tambin se denomina "stock chart. El siguiente cdigo muestra cmo asignar valores a la propiedad Series del grfico:
ArrayList[] data = new ArrayList[2]; Random rnd = new Random(); for (int serie=0;serie<2;serie++) { data[serie] = new ArrayList(); // Each ArrayList corresponds to a "serie" for(int k =0;k<5;k++) { // Put two values for each "serie" data[serie].Add ( rnd.Next(-100,100) ); data[serie].Add ( rnd.Next(100) ); } } super2D3dGraph1.Series = data; super2D3dGraph1.RefreshChart();

Page 15 of 19

Super 2d/3d Graph Library Reference

Cdigo de ejemplo ASP.NET (Web Application)


El siguiente cdigo es equivalente al anterior pero est preparado para utilizarse en una pgina ASPX. Es importante que entienda que Super2d3dGraphLibrary no es un control web (no se puede agregar desde la paleta de componentes a una pgina web) sino que debe utilizarse exclusivamente a nivel de cdigo en el evento Page_Load. Por ejemplo:

Page 16 of 19

Super 2d/3d Graph Library Reference


Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim oGraph As New Super2d3dGraphLibrary.Super2D3dGraph ' First, create a sample chart ' Get some random values ... Dim arrSeries(1) As ArrayList For k As Integer = 0 To UBound(arrSeries) arrSeries(k) = New ArrayList For j As Integer = 0 To 5 arrSeries(k).Add(Rnd() * 1000 - 500) Next Next ' Assign properties to Super2d/3dGraphLibrary control ... With oGraph ' All of the following lines are optional, change them as needed; from here... .AutoRefresh = False ' This prevents internal buffer to be painted after each property changes .Series = arrSeries ' Assign previous random values to the chart control .Title = "2d Bar Chart" ' Title of the chart .SeriesLegend = New String() {"Apples", "Pearls"} ' Names for each serie .Style = Super2d3dGraphLibrary.STYLE2D3D.STYLE2D_BAR ' 2d bar classic chart .Width = 450 ' Chart width .Height = 300 ' Char height .BackColor = Color.LightYellow ' Background color .BackStyle = Super2d3dGraphLibrary.STYLEBACKGROUND.STYLEBACKGROUND_GRADIENT_INVERTED .Calculation = Super2d3dGraphLibrary.CALCULATION.CALCULATION_AVERAGE_SPLINE ' Calculate an average spline and draw it .ValuesLocationStyle = Super2d3dGraphLibrary.STYLECAPTIONLOCATION.STYLECAPTIONLOCATION_INSIDE ' Put values inside the bars .ShowDataTable = False ' Don't need to show the datatable this time .CastShadows = True ' Add a subtle shadow to each bar .Quality = Drawing2D.SmoothingMode.HighQuality ' Best result ' ... to here. .RefreshChart() End With ' Draw the chart on an internal buffer

Page 17 of 19

Super 2d/3d Graph Library Reference


' Now, let's output the drawn chart... ' Change the response headers to output a JPEG image. Response.Clear() Response.ContentType = "image/jpeg" ' Write the image to the response stream in JPEG format. oGraph.BackgroundImage.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg) ' Dispose of the graph control oGraph.Dispose() End Sub End Class

Page 18 of 19

Super 2d/3d Graph Library Reference

Cdigo de ejemplo C# (creando grficas sin formulario)


El siguiente cdigo crea un archivo de imagen con la grfica sin necesidad de emplear el control de usuario.
Super2d3dGraphLibrary.Super2D3dGraph oGraph = new Super2d3dGraphLibrary.Super2D3dGraph(); ArrayList[] data = new ArrayList[2]; Random rnd = new Random(); for (int serie=0;serie<2;serie++) { data[serie] = new ArrayList(); // Each ArrayList corresponds to a "serie" for(int k =0;k<5;k++) { // Put two values for each "serie" data[serie].Add ( rnd.Next(-100,100) ); data[serie].Add ( rnd.Next(100) ); } } oGraph.Width = 700; oGraph.Height = 400; oGraph.Series = data; oGraph.BackgroundImage.Save("c:\\test.png", System.Drawing.Imaging.ImageFormat.Png);

Page 19 of 19

You might also like