Impostazione dell aspetto del grafico
Impostazione dell’aspetto del grafico
Nella guida su Come creare un grafico abbiamo dato una breve introduzione ai tipi di grafici e oggetti grafici offerti da Aspose.Cells, e descritto come crearne uno. Questo articolo discute come personalizzare l’aspetto dei grafici impostandone le proprietà:
- Impostazione dell’area del grafico.
- Impostazione delle linee del grafico.
- Applicazione dei temi.
- Impostazione dei titoli dei grafici e degli assi.
- Lavorare con linee della griglia.
Impostazione dell’Area del Grafico
Ci sono diversi tipi di aree in un grafico e Aspose.Cells offre la flessibilità di modificare l’aspetto di ciascuna area. Gli sviluppatori possono applicare diverse impostazioni di formattazione su un’area cambiandone il colore di primo piano, il colore di sfondo e il formato di riempimento, ecc.
Nell’esempio di seguito, abbiamo applicato diverse impostazioni di formattazione su diversi tipi di aree di un grafico. Queste aree includono:
- Area del tracciato
- Area del grafico
- Area di raccolta serie
- Area di un singolo punto in una Serie di raccolta
Il seguente frammento di codice dimostra come impostare l’area del grafico.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding sample values to cells | |
worksheet.Cells["A1"].PutValue(50); | |
worksheet.Cells["A2"].PutValue(100); | |
worksheet.Cells["A3"].PutValue(150); | |
worksheet.Cells["B1"].PutValue(60); | |
worksheet.Cells["B2"].PutValue(32); | |
worksheet.Cells["B3"].PutValue(50); | |
// Adding a chart to the worksheet | |
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 5, 0, 15, 5); | |
// Accessing the instance of the newly added chart | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex]; | |
// Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.NSeries.Add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
chart.PlotArea.Area.ForegroundColor = Color.Blue; | |
// Setting the foreground color of the chart area | |
chart.ChartArea.Area.ForegroundColor = Color.Yellow; | |
// Setting the foreground color of the 1st SeriesCollection area | |
chart.NSeries[0].Area.ForegroundColor = Color.Red; | |
// Setting the foreground color of the area of the 1st SeriesCollection point | |
chart.NSeries[0].Points[0].Area.ForegroundColor = Color.Cyan; | |
// Filling the area of the 2nd SeriesCollection with a gradient | |
chart.NSeries[1].Area.FillFormat.SetOneColorGradient(Color.Lime, 1, Aspose.Cells.Drawing.GradientStyleType.Horizontal, 1); | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Impostazione delle Linee del Grafico
Gli sviluppatori possono anche applicare diversi tipi di stili sulle linee o marcatori di dati della Serie di raccolta. Il seguente frammento di codice dimostra come impostare le linee del grafico utilizzando l’API Aspose.Cells.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding sample values to cells | |
worksheet.Cells["A1"].PutValue(50); | |
worksheet.Cells["A2"].PutValue(100); | |
worksheet.Cells["A3"].PutValue(150); | |
worksheet.Cells["B1"].PutValue(60); | |
worksheet.Cells["B2"].PutValue(32); | |
worksheet.Cells["B3"].PutValue(50); | |
// Adding a chart to the worksheet | |
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 5, 0, 15, 5); | |
// Accessing the instance of the newly added chart | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex]; | |
// Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.NSeries.Add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
chart.PlotArea.Area.ForegroundColor = Color.Blue; | |
// Setting the foreground color of the chart area | |
chart.ChartArea.Area.ForegroundColor = Color.Yellow; | |
// Setting the foreground color of the 1st SeriesCollection area | |
chart.NSeries[0].Area.ForegroundColor = Color.Red; | |
// Setting the foreground color of the area of the 1st SeriesCollection point | |
chart.NSeries[0].Points[0].Area.ForegroundColor = Color.Cyan; | |
// Filling the area of the 2nd SeriesCollection with a gradient | |
chart.NSeries[1].Area.FillFormat.SetOneColorGradient(Color.Lime, 1, Aspose.Cells.Drawing.GradientStyleType.Horizontal, 1); | |
// Applying a dotted line style on the lines of a SeriesCollection | |
chart.NSeries[0].Border.Style = Aspose.Cells.Drawing.LineType.Dot; | |
// Applying a triangular marker style on the data markers of a SeriesCollection | |
chart.NSeries[0].Marker.MarkerStyle = Aspose.Cells.Charts.ChartMarkerType.Triangle; | |
// Setting the weight of all lines in a SeriesCollection to medium | |
chart.NSeries[1].Border.Weight = Aspose.Cells.Drawing.WeightType.MediumLine; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Applicazione dei Temi Microsoft Excel 2007/2010 ai Grafici
Gli sviluppatori possono applicare diversi temi/colori di Microsoft Excel a Serie di raccolta o altri oggetti grafici come mostrato di seguito nell’esempio.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Instantiate the workbook to open the file that contains a chart | |
Workbook workbook = new Workbook(dataDir + "book1.xlsx"); | |
// Get the first worksheet | |
Worksheet worksheet = workbook.Worksheets[1]; | |
// Get the first chart in the sheet | |
Chart chart = worksheet.Charts[0]; | |
// Specify the FilFormat's type to Solid Fill of the first series | |
chart.NSeries[0].Area.FillFormat.FillType = Aspose.Cells.Drawing.FillType.Solid; | |
// Get the CellsColor of SolidFill | |
CellsColor cc = chart.NSeries[0].Area.FillFormat.SolidFill.CellsColor; | |
// Create a theme in Accent style | |
cc.ThemeColor = new ThemeColor(ThemeColorType.Accent6, 0.6); | |
// Apply the them to the series | |
chart.NSeries[0].Area.FillFormat.SolidFill.CellsColor = cc; | |
// Save the Excel file | |
workbook.Save(dataDir + "output.out.xlsx"); |
Impostare i Titoli dei Grafici o degli Assi
È possibile utilizzare Microsoft Excel per impostare i titoli di un grafico e dei suoi assi in un ambiente WYSIWYG. Aspose.Cells consente anche agli sviluppatori di impostare i titoli di un grafico e dei suoi assi durante l’esecuzione. Tutti i grafici e i loro assi contengono una proprietà Titolo che può essere utilizzata per impostare i loro titoli come mostrato di seguito in un esempio.
Il seguente frammento di codice dimostra come impostare i titoli per grafici e assi.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding sample values to cells | |
worksheet.Cells["A1"].PutValue(50); | |
worksheet.Cells["A2"].PutValue(100); | |
worksheet.Cells["A3"].PutValue(150); | |
worksheet.Cells["B1"].PutValue(60); | |
worksheet.Cells["B2"].PutValue(32); | |
worksheet.Cells["B3"].PutValue(50); | |
// Adding a chart to the worksheet | |
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 5, 0, 15, 5); | |
// Accessing the instance of the newly added chart | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex]; | |
// Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.NSeries.Add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
chart.PlotArea.Area.ForegroundColor = Color.Blue; | |
// Setting the foreground color of the chart area | |
chart.ChartArea.Area.ForegroundColor = Color.Yellow; | |
// Setting the foreground color of the 1st SeriesCollection area | |
chart.NSeries[0].Area.ForegroundColor = Color.Red; | |
// Setting the foreground color of the area of the 1st SeriesCollection point | |
chart.NSeries[0].Points[0].Area.ForegroundColor = Color.Cyan; | |
// Filling the area of the 2nd SeriesCollection with a gradient | |
chart.NSeries[1].Area.FillFormat.SetOneColorGradient(Color.Lime, 1, Aspose.Cells.Drawing.GradientStyleType.Horizontal, 1); | |
// Setting the title of a chart | |
chart.Title.Text = "Title"; | |
// Setting the font color of the chart title to blue | |
chart.Title.Font.Color = Color.Blue; | |
// Setting the title of category axis of the chart | |
chart.CategoryAxis.Title.Text = "Category"; | |
// Setting the title of value axis of the chart | |
chart.ValueAxis.Title.Text = "Value"; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Lavorare con le linee di griglia principali
È possibile personalizzare l’aspetto delle linee di griglia principali. Nascondere o mostrare le linee di griglia, o definire il loro colore e altre impostazioni. Di seguito, mostriamo come nascondere le linee di griglia e come cambiarne il colore.
Nascondere le linee di griglia principali
Gli sviluppatori possono controllare la visibilità delle linee di griglia principali impostando la proprietà IsVisible dell’oggetto Line su true o false.
Il seguente frammento di codice dimostra come nascondere le linee di griglia principali. Dopo aver nascosto le linee di griglia principali, verrà aggiunto un grafico a colonne al foglio di lavoro che non avrà linee di griglia.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding sample values to cells | |
worksheet.Cells["A1"].PutValue(50); | |
worksheet.Cells["A2"].PutValue(100); | |
worksheet.Cells["A3"].PutValue(150); | |
worksheet.Cells["B1"].PutValue(60); | |
worksheet.Cells["B2"].PutValue(32); | |
worksheet.Cells["B3"].PutValue(50); | |
// Adding a chart to the worksheet | |
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 5, 0, 15, 5); | |
// Accessing the instance of the newly added chart | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex]; | |
// Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.NSeries.Add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
chart.PlotArea.Area.ForegroundColor = Color.Blue; | |
// Setting the foreground color of the chart area | |
chart.ChartArea.Area.ForegroundColor = Color.Yellow; | |
// Setting the foreground color of the 1st SeriesCollection area | |
chart.NSeries[0].Area.ForegroundColor = Color.Red; | |
// Setting the foreground color of the area of the 1st SeriesCollection point | |
chart.NSeries[0].Points[0].Area.ForegroundColor = Color.Cyan; | |
// Filling the area of the 2nd SeriesCollection with a gradient | |
chart.NSeries[1].Area.FillFormat.SetOneColorGradient(Color.Lime, 1, Aspose.Cells.Drawing.GradientStyleType.Horizontal, 1); | |
// Hiding the major gridlines of Category Axis | |
chart.CategoryAxis.MajorGridLines.IsVisible = false; | |
// Hiding the major gridlines of Value Axis | |
chart.ValueAxis.MajorGridLines.IsVisible = false; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |
Modifica delle impostazioni delle linee di griglia principali
Gli sviluppatori non possono solo controllare la visibilità delle linee di griglia principali, ma anche altre proprietà, inclusi il colore, ecc.
Il seguente frammento di codice dimostra come cambiare il colore delle linee di griglia principali. Dopo aver impostato il colore delle linee di griglia principali, verrà aggiunto un grafico a colonne al foglio di lavoro con linee di griglia modificate.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create directory if it is not already present. | |
bool IsExists = System.IO.Directory.Exists(dataDir); | |
if (!IsExists) | |
System.IO.Directory.CreateDirectory(dataDir); | |
// Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
// Adding a new worksheet to the Workbook object | |
int sheetIndex = workbook.Worksheets.Add(); | |
// Obtaining the reference of the newly added worksheet by passing its sheet index | |
Worksheet worksheet = workbook.Worksheets[sheetIndex]; | |
// Adding sample values to cells | |
worksheet.Cells["A1"].PutValue(50); | |
worksheet.Cells["A2"].PutValue(100); | |
worksheet.Cells["A3"].PutValue(150); | |
worksheet.Cells["B1"].PutValue(60); | |
worksheet.Cells["B2"].PutValue(32); | |
worksheet.Cells["B3"].PutValue(50); | |
// Adding a chart to the worksheet | |
int chartIndex = worksheet.Charts.Add(Aspose.Cells.Charts.ChartType.Column, 5, 0, 15, 5); | |
// Accessing the instance of the newly added chart | |
Aspose.Cells.Charts.Chart chart = worksheet.Charts[chartIndex]; | |
// Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" | |
chart.NSeries.Add("A1:B3", true); | |
// Setting the foreground color of the plot area | |
chart.PlotArea.Area.ForegroundColor = Color.Blue; | |
// Setting the foreground color of the chart area | |
chart.ChartArea.Area.ForegroundColor = Color.Yellow; | |
// Setting the foreground color of the 1st SeriesCollection area | |
chart.NSeries[0].Area.ForegroundColor = Color.Red; | |
// Setting the foreground color of the area of the 1st SeriesCollection point | |
chart.NSeries[0].Points[0].Area.ForegroundColor = Color.Cyan; | |
// Filling the area of the 2nd SeriesCollection with a gradient | |
chart.NSeries[1].Area.FillFormat.SetOneColorGradient(Color.Lime, 1, Aspose.Cells.Drawing.GradientStyleType.Horizontal, 1); | |
// Setting the color of Category Axis' major gridlines to silver | |
chart.CategoryAxis.MajorGridLines.Color = Color.Silver; | |
// Setting the color of Value Axis' major gridlines to red | |
chart.ValueAxis.MajorGridLines.Color = Color.Red; | |
// Saving the Excel file | |
workbook.Save(dataDir + "book1.out.xls"); |