c# - 使用 epplus 创建 excel 图表

标签 c# excel charts epplus

这是我的。我有一个包含两列的 Excel 工作表。 第 1 列有图例说明,例如 Category1 Category 2 等。 第 2 列有总计数的数字,如 6、4、18 等。

<表类="s-表"> <头> 类别 计数 <正文> 类别 1 6 类别2 4 类别3 18

我需要显示一个带有计数值的图表,并显示每一行的类别名称。 我尝试了不同的值,但我无法弄清楚。 这是我当前的代码

        ExcelChart ec = (ExcelLineChart)chartSheet.Drawings.AddChart("chart_1",      
                        eChartType.Line);
            ec.SetPosition(1, 0, 3, 0);
            ec.SetSize(800, 300);
            var ran1 = chartSheet.Cells["A4:A6"];
            var ran2 = workSheet.Cells["0:0"];

            var serie1 = (ExcelChartSerie)ec.Series.Add(ran1, ran2);
            serie1.Header = chartSheet.Cells["A3"].Value.ToString();

            ran1 = chartSheet.Cells["B4:B6"];
            var serie2 = ec.Series.Add(ran1, ran2);
            serie2.Header = chartSheet.Cells["B3"].Value.ToString();

            var xml = ec.ChartXml;
            var lst = xml.GetElementsByTagName("c:lineChart");
            foreach (System.Xml.XmlNode item in lst[0].ChildNodes) {
                if (item.Name.Equals("ser")) {
                    foreach (System.Xml.XmlNode subitem in item.ChildNodes) {
                        if (subitem.Name.Equals("c:cat")) {
                            item.RemoveChild(subitem);
                            break;
                        }
                    }
                }
            }

这给了我一行计数,但没有显示我想要的类别名称。

提前感谢您的任何回复。

最佳答案

没关系,我摆弄了一下,找到了答案

这是工作代码

ExcelChart chart = chartSheet.Drawings.AddChart("FindingsChart",
OfficeOpenXml.Drawing.Chart.eChartType.ColumnClustered);
chart.Title.Text = "Category Chart";
chart.SetPosition(1, 0, 3, 0);
chart.SetSize(800, 300);
var ser1 = (ExcelChartSerie)(chart.Series.Add(workSheet.Cells["B4:B6"],
workSheet.Cells["A4:A6"]));
ser1.Header = "Category";

关于c# - 使用 epplus 创建 excel 图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29976752/

相关文章:

java饼图高度未正确放置

javascript - nvd3 隐藏特定图例

c# - 1 个 LINQ 查询中的多个对象初始值设定项

c# - 遍历 DirectoryEntry 或任何对象层次结构 - C#

c# - NHibernate:保存 transient 实例时如何更新身份标识?

excel - 访问由 LinEst 函数产生的数组

c# - WPF : Adding Border to an image programmatically

c# - 如何使用 C# 在本地自动获取在线 HTML 表

excel - (用户窗体)ListBox 列表属性由代码更新时未触发 ListBox 更改事件

javascript - 海图仪表