EPPLUS:在 LineMarkers 中设置标记填充颜色
EPPLUS: Set marker fill color in LineMarkers
我尝试设置所有相关属性 ExcelLineChartSerie 必须提供,但仍然无法设置或更改 Excel 标记的颜色,使其不再是默认的难看的蓝色。
ExcelChart ec = ws.Drawings.AddChart("LineChart01", eChartType.LineMarkers);
var rangeX = ws.Cells["A2:A11"]; // X-Axis
var range1 = ws.Cells["B2:B11"]; // 1st LineSerie
ExcelLineChartSerie serie1 = (ExcelLineChartSerie)ec.Series.Add(range1, rangeX);
serie1.MarkerLineColor = System.Drawing.Color.Gray;
serie1.MarkerSize = 10;
serie1.Fill.Color = System.Drawing.Color.Gray;
serie1.LineColor = System.Drawing.Color.Gray;
serie1.Border.LineStyle = eLineStyle.Solid;
从 current source code 来看,似乎此功能尚未在 EPPlus 中实现。
This discussion points to a SO post 展示了如何实现扩展方法来添加更改线条粗细和颜色的功能。应该可以修改此代码以更改标记填充颜色。你需要的 属性 路径在 codeplex 讨论的最后(上面第二个 link)。
它在 EPPlus 中可用 (current source!)。只需将您的基础系列转换为特定系列即可。
var chartType3 = (ExcelLineChart)chart.PlotArea.ChartTypes.Add(eChartType.Line);
var serie5 = (ExcelLineChartSerie)chartType3.Series.Add(worksheet.Cells["F1:F12"], worksheet.Cells["A1:A12"]);
serie5.Marker = eMarkerStyle.Circle;
serie5.MarkerLineColor = Color.FromArgb(165, 165, 165);
serie5.MarkerSize = 5;
我尝试设置所有相关属性 ExcelLineChartSerie 必须提供,但仍然无法设置或更改 Excel 标记的颜色,使其不再是默认的难看的蓝色。
ExcelChart ec = ws.Drawings.AddChart("LineChart01", eChartType.LineMarkers);
var rangeX = ws.Cells["A2:A11"]; // X-Axis
var range1 = ws.Cells["B2:B11"]; // 1st LineSerie
ExcelLineChartSerie serie1 = (ExcelLineChartSerie)ec.Series.Add(range1, rangeX);
serie1.MarkerLineColor = System.Drawing.Color.Gray;
serie1.MarkerSize = 10;
serie1.Fill.Color = System.Drawing.Color.Gray;
serie1.LineColor = System.Drawing.Color.Gray;
serie1.Border.LineStyle = eLineStyle.Solid;
从 current source code 来看,似乎此功能尚未在 EPPlus 中实现。
This discussion points to a SO post 展示了如何实现扩展方法来添加更改线条粗细和颜色的功能。应该可以修改此代码以更改标记填充颜色。你需要的 属性 路径在 codeplex 讨论的最后(上面第二个 link)。
它在 EPPlus 中可用 (current source!)。只需将您的基础系列转换为特定系列即可。
var chartType3 = (ExcelLineChart)chart.PlotArea.ChartTypes.Add(eChartType.Line);
var serie5 = (ExcelLineChartSerie)chartType3.Series.Add(worksheet.Cells["F1:F12"], worksheet.Cells["A1:A12"]);
serie5.Marker = eMarkerStyle.Circle;
serie5.MarkerLineColor = Color.FromArgb(165, 165, 165);
serie5.MarkerSize = 5;