【问题标题】:How to remove a single DataLabel from a Chart made with EPPlus and C#如何从使用 EPPlus 和 C# 制作的图表中删除单个 DataLabel
【发布时间】:2018-12-11 17:48:18
【问题描述】:

是否可以以任何方式从使用 EPPlus 和 C# 制作的图表中删除单个 DataLabel?

我只想删除一个,而不是孔图的设置... 如何访问 DataLabels 的集合(dLbls > dLbl)?

var chart = (ExcelBarChart)worksheet.Drawings.AddChart("Chart", eChartType.ColumnStacked);

还利用以下方法为 Chart 的单个点着色: Legend color is incorrect in excel chart created using EPPlus

(右上角的红点)

现在我想删除一个点的特定标签,通常应用 DataLabels...

chart.DataLabel.ShowValue = true;

任何提示表示赞赏。

【问题讨论】:

    标签: c# epplus


    【解决方案1】:

    我想出了一个解决方案。这个扩展方法可以解决问题...

    public static void RemoveDataLabel(this ExcelBarChart chart, int serieNumber, int objectNumber)
    {
        var chartXml = chart.ChartXml;
    
        var nsa = chart.WorkSheet.Drawings.NameSpaceManager.LookupNamespace("a");
        var nsuri = chartXml.DocumentElement.NamespaceURI;
    
        var nsm = new XmlNamespaceManager(chartXml.NameTable);
        nsm.AddNamespace("a", nsa);
        nsm.AddNamespace("c", nsuri);
    
        var dLbls = chart.ChartXml.SelectSingleNode(@"c:chartSpace/c:chart/c:plotArea/c:barChart/c:ser[c:idx[@val='" + serieNumber + "']]/c:dLbls", nsm);
    
        var dLbl = chartXml.CreateNode(XmlNodeType.Element, "dLbl", nsuri);
    
        var idx = chartXml.CreateNode(XmlNodeType.Element, "idx", nsuri);
        var valueIdx = chartXml.CreateAttribute("val", nsuri);
        valueIdx.Value = objectNumber.ToString();
        idx.Attributes.Append(valueIdx);
        dLbl.AppendChild(idx);
    
        var delete = chartXml.CreateNode(XmlNodeType.Element, "delete", nsuri);
        var valueDelete = chartXml.CreateAttribute("val", nsuri);
        valueDelete.Value = "1";
        delete.Attributes.Append(valueDelete);
        dLbl.AppendChild(delete);
    
        dLbls.AppendChild(dLbl);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多