在圖表上工作
新 InsertChart 方法被加入到 DocumentBuilder 類別中。 所以,讓我們看看如何透過 InsertChart 方法將簡單的柱狀圖插入到文件中。
如何插入圖表
在本節中,我們將學習如何將一張圖表插入到文件中。
插入列圖表
以下範例顯示如何插入 cột biểu đồ:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Add chart with default data. You can specify different chart types and sizes. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
// Chart property of Shape contains all chart related options. | |
Chart chart = shape.Chart; | |
// Get chart series collection. | |
ChartSeriesCollection seriesColl = chart.Series; | |
// Check series count. | |
Console.WriteLine(seriesColl.Count); | |
// Delete default generated series. | |
seriesColl.Clear(); | |
// Create category names array, in this example we have two categories. | |
string[] categories = new string[] { "AW Category 1", "AW Category 2" }; | |
// Adding new series. Please note, data arrays must not be empty and arrays must be the same size. | |
seriesColl.Add("AW Series 1", categories, new double[] { 1, 2 }); | |
seriesColl.Add("AW Series 2", categories, new double[] { 3, 4 }); | |
seriesColl.Add("AW Series 3", categories, new double[] { 5, 6 }); | |
seriesColl.Add("AW Series 4", categories, new double[] { 7, 8 }); | |
seriesColl.Add("AW Series 5", categories, new double[] { 9, 10 }); | |
dataDir = dataDir + @"TestInsertSimpleChartColumn_out.doc"; | |
doc.Save(dataDir); |
程式碼會產生以下結果:
Add 圖表的方法有四個不同的過載,被公開以涵蓋所有可能資料來源的各種圖表類型:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert Column chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Use this overload to add series to any type of Bar, Column, Line and Surface charts. | |
chart.Series.Add("AW Series 1", new string[] { "AW Category 1", "AW Category 2" }, new double[] { 1, 2 }); | |
dataDir = dataDir + @"TestInsertChartColumn_out.doc"; | |
doc.Save(dataDir); |
程式碼會產生以下結果。
插入散點圖
以下示例程式碼說明了如何插入散布圖:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_WorkingWithCharts(); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert Scatter chart. | |
Shape shape = builder.InsertChart(ChartType.Scatter, 432, 252); | |
Chart chart = shape.Chart; | |
// Use this overload to add series to any type of Scatter charts. | |
chart.Series.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 }); | |
dataDir = dataDir + "TestInsertScatterChart_out.docx"; | |
doc.Save(dataDir); |
程式碼會產生以下結果:
插入區域圖表
接下來的程式碼範例說明如何插入面積圖:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_WorkingWithCharts(); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert Area chart. | |
Shape shape = builder.InsertChart(ChartType.Area, 432, 252); | |
Chart chart = shape.Chart; | |
// Use this overload to add series to any type of Area, Radar and Stock charts. | |
chart.Series.Add("AW Series 1", new DateTime[] { | |
new DateTime(2002, 05, 01), | |
new DateTime(2002, 06, 01), | |
new DateTime(2002, 07, 01), | |
new DateTime(2002, 08, 01), | |
new DateTime(2002, 09, 01)}, | |
new double[] { 32, 32, 28, 12, 15 }); | |
dataDir = dataDir + @"TestInsertAreaChart_out.docx"; | |
doc.Save(dataDir); |
程式碼會產生以下結果:
插入氣泡圖表
下面的程式碼範例示範了如何插入一個氣泡圖表:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_WorkingWithCharts(); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert Bubble chart. | |
Shape shape = builder.InsertChart(ChartType.Bubble, 432, 252); | |
Chart chart = shape.Chart; | |
// Use this overload to add series to any type of Bubble charts. | |
chart.Series.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 }, new double[] { 10, 4, 8 }); | |
dataDir = dataDir + @"TestInsertBubbleChart_out.docx"; | |
doc.Save(dataDir); |
程式碼會產生以下結果:
透過 Shape.Chart
物件使用圖表
一旦圖表插入並填入資料,您就可以改變它的外觀。Shape.Chart
屬性包含所有可透過公開的API選用的圖表相關選項。
例如,讓我們改變圖表標題或圖例行為:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_WorkingWithCharts(); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Shape shape = builder.InsertChart(ChartType.Line, 432, 252); | |
Chart chart = shape.Chart; | |
// Determines whether the title shall be shown for this chart. Default is true. | |
chart.Title.Show = true; | |
// Setting chart Title. | |
chart.Title.Text = "Sample Line Chart Title"; | |
// Determines whether other chart elements shall be allowed to overlap title. | |
chart.Title.Overlay = false; | |
// Please note if null or empty value is specified as title text, auto generated title will be shown. | |
// Determines how legend shall be shown for this chart. | |
chart.Legend.Position = LegendPosition.Left; | |
chart.Legend.Overlay = true; | |
dataDir = dataDir + @"SimpleLineChart_out.docx"; | |
doc.Save(dataDir); |
程式碼產生以下結果:
如何在圖表中操作 ChartSeriesCollection
讓我們看一下 ChartSeries 的收藏。 所有圖表系列都透過chart.Series集合可用,是IEnumerable:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// Get chart series collection. | |
ChartSeriesCollection seriesColl = chart.Series; | |
// Check series count. | |
Console.WriteLine(seriesColl.Count); |
您可以逐一移除第一系列,或清除全部,以及如果需要的話,再增加新的。 新插入的圖表新增了一些預設的系列到此集合中。 要移除它們你需要呼叫 chart.Series.Clear() 這個方法。
使用 Single ChartSeries 類別
以下是如何與特定系列一起工作的方式:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// Get first series. | |
ChartSeries series0 = shape.Chart.Series[0]; | |
// Get second series. | |
ChartSeries series1 = shape.Chart.Series[1]; | |
// Change first series name. | |
series0.Name = "My Name1"; | |
// Change second series name. | |
series1.Name = "My Name2"; | |
// You can also specify whether the line connecting the points on the chart shall be smoothed using Catmull-Rom splines. | |
series0.Smooth = true; | |
series1.Smooth = true; |
請見下面的結果:
所有單項 ChartSeries 都有預設 ChartDataPoint 選項,請試著使用以下程式碼來改變它們:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// Specifies whether by default the parent element shall inverts its colors if the value is negative. | |
series0.InvertIfNegative = true; | |
// Set default marker symbol and size. | |
series0.Marker.Symbol = MarkerSymbol.Circle; | |
series0.Marker.Size = 15; | |
series1.Marker.Symbol = MarkerSymbol.Star; | |
series1.Marker.Size = 10; |
請見下面的結果:
如何使用 ChartSeries
的單個 ChartDataPoint
使用 ChartDataPoint,您可以自訂圖表系列中的單一數據點格式:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_WorkingWithCharts(); | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Shape shape = builder.InsertChart(ChartType.Line, 432, 252); | |
Chart chart = shape.Chart; | |
// Get first series. | |
ChartSeries series0 = shape.Chart.Series[0]; | |
// Get second series. | |
ChartSeries series1 = shape.Chart.Series[1]; | |
ChartDataPointCollection dataPointCollection = series0.DataPoints; | |
// Add data point to the first and second point of the first series. | |
ChartDataPoint dataPoint00 = dataPointCollection.Add(0); | |
ChartDataPoint dataPoint01 = dataPointCollection.Add(1); | |
// Set explosion. | |
dataPoint00.Explosion = 50; | |
// Set marker symbol and size. | |
dataPoint00.Marker.Symbol = MarkerSymbol.Circle; | |
dataPoint00.Marker.Size = 15; | |
dataPoint01.Marker.Symbol = MarkerSymbol.Diamond; | |
dataPoint01.Marker.Size = 20; | |
// Add data point to the third point of the second series. | |
ChartDataPoint dataPoint12 = series1.DataPoints.Add(2); | |
dataPoint12.InvertIfNegative = true; | |
dataPoint12.Marker.Symbol = MarkerSymbol.Star; | |
dataPoint12.Marker.Size = 20; | |
dataDir = dataDir + @"SingleChartDataPoint_out.docx"; | |
doc.Save(dataDir); |
請看結果如下:
如何使用圖表數據標籤來處理單一圖表系列
使用 ChartDataLabel,您可以指定圖列中單個資料標籤的格式,例如顯示/隱藏LegendKey、CategoryName、SeriesName、Value 等。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Shape shape = builder.InsertChart(ChartType.Bar, 432, 252); | |
Chart chart = shape.Chart; | |
// Get first series. | |
ChartSeries series0 = shape.Chart.Series[0]; | |
ChartDataLabelCollection labels = series0.DataLabels; | |
// Set properties. | |
labels.ShowLegendKey = true; | |
// By default, when you add data labels to the data points in a pie chart, leader lines are displayed for data labels that are | |
// Positioned far outside the end of data points. Leader lines create a visual connection between a data label and its | |
// Corresponding data point. | |
labels.ShowLeaderLines = true; | |
labels.ShowCategoryName = false; | |
labels.ShowPercentage = false; | |
labels.ShowSeriesName = true; | |
labels.ShowValue = true; | |
labels.Separator = "/"; | |
labels.ShowValue = true; | |
dataDir = dataDir + "SimpleBarChart_out.docx"; | |
doc.Save(dataDir); |
請看以下結果。
如何在 ChartSeries 中為 ChartDataLabels 定義預設選項?
ChartDataLabelCollection 類別定義了可用來設定圖表 ChartDataLabels 的預設選項的屬性,用於 Series。 這些屬性包括 ShowCategoryName、ShowBubbleSize、ShowPercentage、ShowSeriesName、ShowValue 等。
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
Shape shape = builder.InsertChart(ChartType.Pie, 432, 252); | |
Chart chart = shape.Chart; | |
chart.Series.Clear(); | |
ChartSeries series = chart.Series.Add("Series 1", | |
new string[] { "Category1", "Category2", "Category3" }, | |
new double[] { 2.7, 3.2, 0.8 }); | |
ChartDataLabelCollection labels = series.DataLabels; | |
labels.ShowPercentage = true; | |
labels.ShowValue = true; | |
labels.ShowLeaderLines = false; | |
labels.Separator = " - "; | |
doc.Save(dataDir + "Demo.docx"); |
請看下面的結果:
如何格式化圖表資料標籤
使用 NumberFormat 您可以指定圖表中單一資料標籤的格式。
以下範例程式碼示範了如何格式化資料標籤上的數值:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Add chart with default data. | |
Shape shape = builder.InsertChart(ChartType.Line, 432, 252); | |
Chart chart = shape.Chart; | |
chart.Title.Text = "Data Labels With Different Number Format"; | |
// Delete default generated series. | |
chart.Series.Clear(); | |
// Add new series | |
ChartSeries series1 = chart.Series.Add("AW Series 1", | |
new string[] { "AW0", "AW1", "AW2" }, | |
new double[] { 2.5, 1.5, 3.5 }); | |
series1.HasDataLabels = true; | |
series1.DataLabels.ShowValue = true; | |
series1.DataLabels[0].NumberFormat.FormatCode = "\"$\"#,##0.00"; | |
series1.DataLabels[1].NumberFormat.FormatCode = "dd/mm/yyyy"; | |
series1.DataLabels[2].NumberFormat.FormatCode = "0.00%"; | |
// Or you can set format code to be linked to a source cell, | |
// in this case NumberFormat will be reset to general and inherited from a source cell. | |
series1.DataLabels[2].NumberFormat.IsLinkedToSource = true; | |
dataDir = dataDir + @"NumberFormat_DataLabel_out.docx"; | |
doc.Save(dataDir); |
如何設定圖表軸屬性
如果您要工作於圖表軸,尺度和顯示單位為值軸,請使用 ChartAxis、AxisDisplayUnit 和 AxisScaling 類別。
接下來的程式碼範例示範了如何定義 X 和 Y 軸屬性:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Area, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new DateTime[] { new DateTime(2002, 01, 01), new DateTime(2002, 06, 01), new DateTime(2002, 07, 01), new DateTime(2002, 08, 01), new DateTime(2002, 09, 01) }, | |
new double[] { 640, 320, 280, 120, 150 }); | |
ChartAxis xAxis = chart.AxisX; | |
ChartAxis yAxis = chart.AxisY; | |
// Change the X axis to be category instead of date, so all the points will be put with equal interval on the X axis. | |
xAxis.CategoryType = AxisCategoryType.Category; | |
// Define X axis properties. | |
xAxis.Crosses = AxisCrosses.Custom; | |
xAxis.CrossesAt = 3; // measured in display units of the Y axis (hundreds) | |
xAxis.ReverseOrder = true; | |
xAxis.MajorTickMark = AxisTickMark.Cross; | |
xAxis.MinorTickMark = AxisTickMark.Outside; | |
xAxis.TickLabelOffset = 200; | |
// Define Y axis properties. | |
yAxis.TickLabelPosition = AxisTickLabelPosition.High; | |
yAxis.MajorUnit = 100; | |
yAxis.MinorUnit = 50; | |
yAxis.DisplayUnit.Unit = AxisBuiltInUnit.Hundreds; | |
yAxis.Scaling.Minimum = new AxisBound(100); | |
yAxis.Scaling.Maximum = new AxisBound(700); | |
dataDir = dataDir + @"SetAxisProperties_out.docx"; | |
doc.Save(dataDir); |
如何設定軸的 Date 秒數值
以下範例顯示如何將日期/時間值設定為軸屬性:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new DateTime[] { new DateTime(2017, 11, 06), new DateTime(2017, 11, 09), new DateTime(2017, 11, 15), | |
new DateTime(2017, 11, 21), new DateTime(2017, 11, 25), new DateTime(2017, 11, 29) }, | |
new double[] { 1.2, 0.3, 2.1, 2.9, 4.2, 5.3 }); | |
// Set X axis bounds. | |
ChartAxis xAxis = chart.AxisX; | |
xAxis.Scaling.Minimum = new AxisBound((new DateTime(2017, 11, 05)).ToOADate()); | |
xAxis.Scaling.Maximum = new AxisBound((new DateTime(2017, 12, 03)).ToOADate()); | |
// Set major units to a week and minor units to a day. | |
xAxis.MajorUnit = 7; | |
xAxis.MinorUnit = 1; | |
xAxis.MajorTickMark = AxisTickMark.Cross; | |
xAxis.MinorTickMark = AxisTickMark.Outside; | |
dataDir = dataDir + @"SetDateTimeValuesToAxis_out.docx"; | |
doc.Save(dataDir); |
如何格式化軸上的數字值
以下範例顯示如何改變值軸上的數字格式:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new string[] { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }, | |
new double[] { 1900000, 850000, 2100000, 600000, 1500000 }); | |
// Set number format. | |
chart.AxisY.NumberFormat.FormatCode = "#,##0"; | |
dataDir = dataDir + @"FormatAxisNumber_out.docx"; | |
doc.Save(dataDir); |
如何設定軸的範圍
AxisBound
類別代表了軸值最小或最大界限。 Bound可以指定為數值、日期時間或特殊之auto值。
以下程式碼示例範示了如何設定軸的範圍:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new string[] { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }, | |
new double[] { 1.2, 0.3, 2.1, 2.9, 4.2 }); | |
chart.AxisY.Scaling.Minimum = new AxisBound(0); | |
chart.AxisY.Scaling.Maximum = new AxisBound(6); | |
dataDir = dataDir + @"SetboundsOfAxis_out.docx"; | |
doc.Save(dataDir); |
如何設定標籤之間的間隔單位
接下來這段程式碼範例示範了如何在軸上設定標籤之間的間隔單位:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new string[] { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }, | |
new double[] { 1.2, 0.3, 2.1, 2.9, 4.2 }); | |
chart.AxisX.TickLabelSpacing = 2; | |
dataDir = dataDir + @"SetIntervalUnitBetweenLabelsOnAxis_out.docx"; | |
doc.Save(dataDir); |
如何隱藏圖表軸線
若您想要顯示或隱藏圖表軸,您可以簡單地透過設定 ChartAxis.Hidden
屬性的值來達成此目的。
以下程式碼示例說明了如何將圖表的Y軸隱藏:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(); | |
DocumentBuilder builder = new DocumentBuilder(doc); | |
// Insert chart. | |
Shape shape = builder.InsertChart(ChartType.Column, 432, 252); | |
Chart chart = shape.Chart; | |
// Clear demo data. | |
chart.Series.Clear(); | |
// Fill data. | |
chart.Series.Add("AW Series 1", | |
new string[] { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }, | |
new double[] { 1.2, 0.3, 2.1, 2.9, 4.2 }); | |
// Hide the Y axis. | |
chart.AxisY.Hidden = true; | |
dataDir = dataDir + @"HideChartAxis_out.docx"; | |
doc.Save(dataDir); |
如何對齊圖表標籤
若您希望設定多行標籤的文字對齊,您可以透過設定 TickLabels.對齊方式 屬性的值來簡單地達成此目標。
接下來的程式碼示例顯示如何調整標籤對齊方式:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET | |
Document doc = new Document(dataDir + "Document.docx"); | |
Shape shape = (Shape)doc.GetChild(NodeType.Shape, 0, true); | |
ChartAxis axis = shape.Chart.AxisX; | |
//This property has effect only for multi-line labels. | |
axis.TickLabelAlignment = ParagraphAlignment.Right; | |
doc.Save(dataDir + "Document_out.docx"); |
如何設定填充和筆劃格式化
您可以為圖表系列、資料點及標記設定填充和筆劃格式。 要做到這一點,您需要在 ChartFormat 類別中使用類型的特性、在 ChartSeries、ChartDataPoint 和 ChartMarker 類別使用類別特性,以及使用一些屬性的別名,例如 Stroke
類別中的 ForeColor、BackColor、Visible 和 Transparency。
以下範例說明如何設定系列顏色:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.InsertChart(ChartType.Column, 432, 252);
Chart chart = shape.Chart;
ChartSeriesCollection seriesColl = chart.Series;
// Delete default generated series.
seriesColl.Clear();
// Create category names array.
string[] categories = new string[] { "AW Category 1", "AW Category 2" };
// Adding new series. Value and category arrays must be the same size.
ChartSeries series1 = seriesColl.Add("AW Series 1", categories, new double[] { 1, 2 });
ChartSeries series2 = seriesColl.Add("AW Series 2", categories, new double[] { 3, 4 });
ChartSeries series3 = seriesColl.Add("AW Series 3", categories, new double[] { 5, 6 });
// Set series color.
series1.Format.Fill.ForeColor = Color.Red;
series2.Format.Fill.ForeColor = Color.Yellow;
series3.Format.Fill.ForeColor = Color.Blue;
doc.Save(dir + "ColumnColor.docx");
以下範例說明如何設定線條的顏色與寬度:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.InsertChart(ChartType.Line, 432, 252);
Chart chart = shape.Chart;
ChartSeriesCollection seriesColl = chart.Series;
// Delete default generated series.
seriesColl.Clear();
// Adding new series.
ChartSeries series1 = seriesColl.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 },
new double[] { 2.7, 3.2, 0.8 });
ChartSeries series2 = seriesColl.Add("AW Series 2", new double[] { 0.5, 1.5, 2.5 },
new double[] { 3, 1, 2 });
// Set series color.
series1.Format.Stroke.ForeColor = Color.Red;
series1.Format.Stroke.Weight = 5;
series2.Format.Stroke.ForeColor = Color.LightGreen;
series2.Format.Stroke.Weight = 5;
doc.Save(dir + "LineColorAndWeight.docx");