ChartType

ChartType enumeration

Specifica il tipo di un grafico.

public enum ChartType

I valori

NomeValoreDescrizione
Area0Grafico ad area.
AreaStacked1Grafico ad area impilata.
AreaPercentStacked2Grafico ad area impilata al 100%.
Area3D3Grafico ad area 3D.
Area3DStacked4Grafico ad area impilata 3D.
Area3DPercentStacked5Grafico ad area impilata 3D al 100%.
Bar6Grafico a barre.
BarStacked7Grafico a barre impilate.
BarPercentStacked8Grafico a barre impilate al 100%.
Bar3D9Grafico a barre 3D.
Bar3DStacked10Grafico a barre impilate 3D.
Bar3DPercentStacked11Grafico a barre impilate 3D al 100%.
Bubble12Grafico a bolle.
Bubble3D13Grafico a bolle 3D.
Column14Grafico a colonne.
ColumnStacked15Grafico a colonne impilate.
ColumnPercentStacked16Grafico a colonne impilate al 100%.
Column3D17Grafico a colonne 3D.
Column3DStacked18Grafico a colonne impilate 3D.
Column3DPercentStacked19Grafico a colonne impilate 3D al 100%.
Column3DClustered20Grafico a colonne raggruppate 3D.
Doughnut21Grafico a ciambella.
Line22Grafico a linee.
LineStacked23Grafico a linee impilate.
LinePercentStacked24Grafico a linee impilate al 100%.
Line3D25Grafico a linee 3D.
Pie26Grafico a torta.
Pie3D27Grafico a torta 3D.
PieOfBar28Grafico a torta o a barre.
PieOfPie29Grafico a torta.
Radar30Grafico radar.
Scatter31Grafico a dispersione.
Stock32Grafico azionario.
Surface33Carta di superficie.
Surface3D34Grafico di superficie 3D.
Treemap35Grafico ad albero.
Sunburst36Grafico a raggiera.
Histogram37Grafico istogramma.
Pareto38Grafico di Pareto.
BoxAndWhisker39Grafico a scatola e baffi.
Waterfall40Grafico a cascata.
Funnel41Grafico a imbuto.

Esempi

Mostra come creare un tipo appropriato di serie di grafici per un tipo di grafico.

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

    // Esistono diversi modi per popolare la raccolta di serie di un grafico.
    // Diversi schemi di serie sono pensati per diversi tipi di grafici.
    // 1 - Grafico a colonne con colonne raggruppate e disposte lungo l'asse X per categoria:
    Chart chart = AppendChart(builder, ChartType.Column, 500, 300);

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

    // Inserire due serie di valori decimali contenenti un valore per ciascuna rispettiva categoria.
    // Questo grafico a colonne avrà tre gruppi, ciascuno con due colonne.
    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 });

    // Le categorie sono distribuite lungo l'asse X e i valori sono distribuiti lungo l'asse Y.
    Assert.AreEqual(ChartAxisType.Category, chart.AxisX.Type);
    Assert.AreEqual(ChartAxisType.Value, chart.AxisY.Type);

    // 2 - Grafico ad area con date distribuite lungo l'asse 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)
    };

    // Inserire una serie con un valore decimale per ogni rispettiva data.
    // Le date saranno distribuite lungo un asse X lineare,
    // e i valori aggiunti a questa serie creeranno punti dati.
    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 - Diagramma di dispersione 2D:
    chart = AppendChart(builder, ChartType.Scatter, 500, 300);

    // Ogni serie necessiterà di due array decimali di uguale lunghezza.
    // Il primo array contiene i valori X e il secondo contiene i corrispondenti valori Y
    // dei punti dati sul grafico del grafico.
    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 - Grafico a bolle:
    chart = AppendChart(builder, ChartType.Bubble, 500, 300);

    // Ogni serie necessiterà di tre array decimali di uguale lunghezza.
    // Il primo array contiene i valori X, il secondo contiene i corrispondenti valori Y,
    // e il terzo contiene i diametri per ciascuno dei punti dati del grafico.
    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>
/// Inserire un grafico utilizzando un generatore di documenti con un ChartType, larghezza e altezza specificati e rimuovere i relativi dati demo.
/// </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;
}

Guarda anche