Настройка внешнего вида диаграммы
Настройка внешнего вида диаграммы
В разделе «Как создать диаграмму» мы кратко рассказали о типах диаграмм и объектов диаграммы, предлагаемых Aspose.Cells, и описали, как их создать. В этой статье рассматривается, как настроить внешний вид диаграмм, установив их свойства:
- Установка области диаграммы.
- Настройка линий графика.
- Применение тем.
- Установка заголовков для диаграмм и осей.
- Работа с линиями сетки.
Настройка области диаграммы
На диаграмме есть разные области, и номер Aspose.Cells позволяет гибко изменять внешний вид каждой области. Разработчики могут применять различные параметры форматирования к области, изменяя ее цвет переднего плана, цвет фона, формат заливки и т. д.
В приведенном ниже примере мы применили разные настройки форматирования к разным областям диаграммы. Эти области включают в себя:
- Площадь участка
- Область диаграммы
- СерияОбласть сбора
- Площадь одной точки в SeriesCollection
В следующем фрагменте кода показано, как задать область диаграммы.
// 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"); |
Настройка линий диаграммы
Разработчики также могут применять различные стили к линиям или маркерам данных.СерияКоллекция. В следующем фрагменте кода показано, как задать линии диаграммы с помощью Aspose.Cells API.
// 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"); |
Применение тем Excel 2007/2010 Microsoft к диаграммам
Разработчики могут применять различные темы/цвета Excel Microsoft кСерияКоллекцияили другие объекты диаграммы, как показано ниже в примере.
// 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"); |
Установка заголовков диаграмм или осей
Вы можете использовать Microsoft Excel, чтобы установить заголовки диаграммы и ее осей в среде WYSIWYG. 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); | |
// 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"); |
Работа с основными линиями сетки
Можно настроить внешний вид основных линий сетки. Скройте или отобразите линии сетки или задайте их цвет и другие параметры. Ниже мы покажем, как скрыть линии сетки и изменить их цвет.
Скрытие основных линий сетки
Разработчики могут контролировать видимость основных линий сетки, устанавливаяВидимый собственностьЛиния Возражатьистинный или жеЛОЖЬ.
В следующем фрагменте кода показано, как скрыть основные линии сетки. После скрытия основных линий сетки на рабочий лист будет добавлена столбчатая диаграмма, не имеющая линий сетки.
// 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"); |
Изменение основных настроек линий сетки
Разработчики могут контролировать не только видимость основных линий сетки, но и другие свойства, включая цвет и т. д.
В следующем фрагменте кода показано, как изменить цвет основных линий сетки. После установки цвета основных линий сетки на рабочий лист будет добавлена столбчатая диаграмма с измененными линиями сетки.
// 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"); |