ChartType

ChartType enumeration

Especifica el tipo de gráfico.

public enum ChartType

Valores

NombreValorDescripción
Area0Gráfico de áreas.
AreaStacked1Gráfico de áreas apiladas.
AreaPercentStacked2Gráfico de área apilada al 100%.
Area3D3Gráfico de área 3D.
Area3DStacked4Gráfico de áreas apiladas 3D.
Area3DPercentStacked5Gráfico de área apilada 100% 3D.
Bar6Gráfico de barras.
BarStacked7Gráfico de barras apiladas.
BarPercentStacked8Gráfico de barras apiladas al 100%.
Bar3D9Gráfico de barras 3D.
Bar3DStacked10Gráfico de barras apiladas 3D.
Bar3DPercentStacked11Gráfico de barras apiladas 100% en 3D.
Bubble12Gráfico de burbujas.
Bubble3D13Gráfico de burbujas 3D.
Column14Gráfico de columnas.
ColumnStacked15Gráfico de columnas apiladas.
ColumnPercentStacked16Gráfico de columnas apiladas al 100%.
Column3D17Gráfico de columnas 3D.
Column3DStacked18Gráfico de columnas apiladas 3D.
Column3DPercentStacked19Gráfico de columnas apiladas 100 % en 3D.
Column3DClustered20Gráfico de columnas agrupadas en 3D.
Doughnut21Gráfico de anillos.
Line22Gráfico de líneas.
LineStacked23Gráfico de líneas apiladas.
LinePercentStacked24Gráfico de líneas apiladas al 100%.
Line3D25Gráfico de líneas 3D.
Pie26Gráfico circular.
Pie3D27Gráfico circular 3D.
PieOfBar28Gráfico circular de barras.
PieOfPie29Gráfico circular de sectores.
Radar30Gráfico de radar.
Scatter31Gráfico de dispersión.
Stock32Gráfico de acciones.
Surface33Gráfico de superficie.
Surface3D34Gráfico de superficie 3D.
Treemap35Gráfico de mapa de árbol.
Sunburst36Gráfico de rayos de sol.
Histogram37Gráfico de histograma.
Pareto38Diagrama de Pareto.
BoxAndWhisker39Gráfico de caja y bigotes.
Waterfall40Gráfico de cascada.
Funnel41Gráfico de embudo.

Ejemplos

Muestra cómo crear un tipo de serie de gráficos apropiado para un tipo de gráfico.

public void ChartSeriesCollection()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    // Hay varias formas de completar la colección de series de un gráfico.
    // Diferentes esquemas de series están pensados para distintos tipos de gráficos.
    // 1 - Gráfico de columnas con columnas agrupadas y en bandas a lo largo del eje X por categoría:
    Chart chart = AppendChart(builder, ChartType.Column, 500, 300);

    string[] categories = { "Category 1", "Category 2", "Category 3" };

    // Inserte dos series de valores decimales que contengan un valor para cada categoría respectiva.
    //Este gráfico de columnas tendrá tres grupos, cada uno con dos columnas.
    chart.Series.Add("Series 1", categories, new[] { 76.6, 82.1, 91.6 });
    chart.Series.Add("Series 2", categories, new[] { 64.2, 79.5, 94.0 });

    // Las categorías se distribuyen a lo largo del eje X y los valores se distribuyen a lo largo del eje Y.
    Assert.AreEqual(ChartAxisType.Category, chart.AxisX.Type);
    Assert.AreEqual(ChartAxisType.Value, chart.AxisY.Type);

    // 2 - Gráfico de áreas con fechas distribuidas a lo largo del eje X:
    chart = AppendChart(builder, ChartType.Area, 500, 300);

    DateTime[] dates = { new DateTime(2014, 3, 31),
        new DateTime(2017, 1, 23),
        new DateTime(2017, 6, 18),
        new DateTime(2019, 11, 22),
        new DateTime(2020, 9, 7)
    };

    // Inserta una serie con un valor decimal para cada fecha respectiva.
    //Las fechas se distribuirán a lo largo de un eje X lineal,
    // y los valores agregados a esta serie crearán puntos de datos.
    chart.Series.Add("Series 1", dates, new[] { 15.8, 21.5, 22.9, 28.7, 33.1 });

    Assert.AreEqual(ChartAxisType.Category, chart.AxisX.Type);
    Assert.AreEqual(ChartAxisType.Value, chart.AxisY.Type);

    // 3 - Diagrama de dispersión 2D:
    chart = AppendChart(builder, ChartType.Scatter, 500, 300);

    //Cada serie necesitará dos matrices decimales de igual longitud.
    // La primera matriz contiene valores X y la segunda contiene valores Y correspondientes
    // de puntos de datos en el gráfico del gráfico.
    chart.Series.Add("Series 1",
        new[] { 3.1, 3.5, 6.3, 4.1, 2.2, 8.3, 1.2, 3.6 },
        new[] { 3.1, 6.3, 4.6, 0.9, 8.5, 4.2, 2.3, 9.9 });
    chart.Series.Add("Series 2",
        new[] { 2.6, 7.3, 4.5, 6.6, 2.1, 9.3, 0.7, 3.3 },
        new[] { 7.1, 6.6, 3.5, 7.8, 7.7, 9.5, 1.3, 4.6 });

    Assert.AreEqual(ChartAxisType.Value, chart.AxisX.Type);
    Assert.AreEqual(ChartAxisType.Value, chart.AxisY.Type);

    // 4 - Gráfico de burbujas:
    chart = AppendChart(builder, ChartType.Bubble, 500, 300);

    //Cada serie necesitará tres matrices decimales de igual longitud.
    // La primera matriz contiene valores X, la segunda contiene valores Y correspondientes,
    // y el tercero contiene los diámetros de cada uno de los puntos de datos del gráfico.
    chart.Series.Add("Series 1",
        new[] { 1.1, 5.0, 9.8 },
        new[] { 1.2, 4.9, 9.9 },
        new[] { 2.0, 4.0, 8.0 });

    doc.Save(ArtifactsDir + "Charts.ChartSeriesCollection.docx");
}

/// <summary>
/// Inserte un gráfico utilizando un generador de documentos de un ChartType, ancho y alto específicos, y elimine sus datos de demostración.
/// </summary>
private static Chart AppendChart(DocumentBuilder builder, ChartType chartType, double width, double height)
{
    Shape chartShape = builder.InsertChart(chartType, width, height);
    Chart chart = chartShape.Chart;
    chart.Series.Clear();
    return chart;
}

Ver también