Asse X vs. Asse delle categorie
Possibili Scenari di Utilizzo
Ci sono diversi tipi di assi X. Mentre l’asse Y è un asse di tipo Valore, l’asse X può essere un asse di tipo Categoria o un asse di tipo Valore. Utilizzando un asse di tipo Valore, i dati sono trattati come dati numerici continuamente variabili, e il marcatore è posizionato in un punto lungo l’asse che varia in base al suo valore numerico. Utilizzando un asse di tipo Categoria, i dati sono trattati come una sequenza di etichette di testo non numeriche, e il marcatore è posizionato in un punto lungo l’asse in base alla sua posizione nella sequenza. Il codice di esempio qui sotto illustra la differenza tra Assi di Valore e di Categoria. I nostri dati di esempio sono mostrati nella tabella di esempio di seguito. La prima colonna contiene i nostri dati asse X, che possono essere trattati come Categorie o come Valori. Nota che i numeri non sono equispaziati, né appaiono in ordine numerico.
Gestire l’asse X e il’asse delle categorie come Microsoft Excel
Mostreremo questi dati su due tipi di grafico, il primo grafico è un grafico XY (disperso) con l’asse X come asse dei valori, il secondo grafico è un grafico a linee con l’asse X come asse delle categorie.
Codice di Esempio
// Create an instance of Workbook | |
Workbook workbook = new Workbook(); | |
// Access the first worksheet. | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Put the sample values used in charts | |
worksheet.Cells["A2"].PutValue(1); | |
worksheet.Cells["A3"].PutValue(3); | |
worksheet.Cells["A4"].PutValue(2.5); | |
worksheet.Cells["A5"].PutValue(3.5); | |
worksheet.Cells["B1"].PutValue("Cats"); | |
worksheet.Cells["C1"].PutValue("Dogs"); | |
worksheet.Cells["D1"].PutValue("Fishes"); | |
worksheet.Cells["B2"].PutValue(7); | |
worksheet.Cells["B3"].PutValue(6); | |
worksheet.Cells["B4"].PutValue(5); | |
worksheet.Cells["B5"].PutValue(4); | |
worksheet.Cells["C2"].PutValue(7); | |
worksheet.Cells["C3"].PutValue(5); | |
worksheet.Cells["C4"].PutValue(4); | |
worksheet.Cells["C5"].PutValue(3); | |
worksheet.Cells["D2"].PutValue(8); | |
worksheet.Cells["D3"].PutValue(7); | |
worksheet.Cells["D4"].PutValue(3); | |
worksheet.Cells["D5"].PutValue(2); | |
//Create Line Chart: X as Category Axis | |
int pieIdx = worksheet.Charts.Add(ChartType.LineWithDataMarkers, 6, 15, 20, 21); | |
// Retrieve the Chart object | |
Chart chart = worksheet.Charts[pieIdx]; | |
// Add Series | |
chart.NSeries.Add("B2:D5", true); | |
// Set the category data | |
chart.NSeries.CategoryData = "=Sheet1!$A$2:$A$5"; | |
// Set the first series mame | |
chart.NSeries[0].Name = "Cats"; | |
// Set the second series mame | |
chart.NSeries[1].Name = "Dogs"; | |
// Set the third series mame | |
chart.NSeries[2].Name = "Fishes"; | |
// Set the Legend at the bottom of the chart area | |
chart.Legend.Position = LegendPositionType.Bottom; | |
// Fill the PlotArea area with nothing | |
chart.PlotArea.Area.FillFormat.FillType = FillType.None; | |
// Create XY (Scatter) Chart: X as Value Axis | |
pieIdx = worksheet.Charts.Add(ChartType.ScatterConnectedByLinesWithDataMarker, 6, 6, 20, 12); | |
// Retrieve the Chart object | |
chart = worksheet.Charts[pieIdx]; | |
// Add Series | |
chart.NSeries.Add("B2:D5", true); | |
// Set X values for series | |
chart.NSeries[0].XValues = "{1,3,2.5,3.5}"; | |
chart.NSeries[1].XValues = "{1,3,2.5,3.5}"; | |
chart.NSeries[2].XValues = "{1,3,2.5,3.5}"; | |
// Set the first series mame | |
chart.NSeries[0].Name = "Cats"; | |
// Set the second series mame | |
chart.NSeries[1].Name = "Dogs"; | |
// Set the third series mame | |
chart.NSeries[2].Name = "Fishes"; | |
// Set the Legend at the bottom of the chart area | |
chart.Legend.Position = LegendPositionType.Bottom; | |
// Fill the PlotArea area with nothing | |
chart.PlotArea.Area.FillFormat.FillType = FillType.None; | |
// Save the Excel file | |
workbook.Save("XAxis.xlsx"); |