【问题标题】:How To Make A Multiline Data Label In A Bar Chart?如何在条形图中制作多行数据标签?
【发布时间】:2016-01-23 10:50:47
【问题描述】:

这似乎是一个很容易解决的问题,但我一直无法解决。基本上,我在 html 网页上有一个条形图。使用 System.Web.UI.DataVisualization.Charting 创建图表。我想做的是改变标签的外观。我的标签看起来如何的一个想法是:“M:312 A:321 S:432”。我想做的是让它们彼此叠放,而不是并排。所以“M: ...”将是第一行,然后是其他行。所以一共三行。反正我能做到吗?

代码:

    Chart1.Visible = true;
            DataTableReader datareader = table.CreateDataReader();
            Chart1.DataBindCrossTable(datareader, "FunctionGroup", "Date", "AverageGrading", "");
            Chart1.Legends.Add("Legend");
            Chart1.ChartAreas[0].AxisX.Title = "Period of feedback";
            Chart1.ChartAreas[0].AxisY.Title = "Average grade";
            Chart1.Legends[0].Enabled = true;
            Chart1.Legends[0].BackColor = System.Drawing.Color.Transparent;
            Chart1.Width = 1000;
            Chart1.Height = 600;

            ArrayList listOfStDev = new ArrayList();
            ArrayList listOfMed = new ArrayList();

            foreach (DateTime date in listofdates)
            {
                listOfStDev.Add(dbmanager.GetStdDevAppraisalForFunction(section, functionlist, date, questionID));
                listOfMed.Add(GetMedianFunctionViaSectionCount(section, functionlist, date, questionID));
            }
            for (int i = 0; i < Chart1.Series.Count; i++)
            {
                for (int k = 0; k < Chart1.Series[i].Points.Count; k++)
                {
                    Chart1.Series[i].Points[k].Label = "A: " + "#VALY" + " S: " + Convert.ToDouble(listOfStDev[k]).ToString("F") + " M: " + Convert.ToDouble(listOfMed[k]).ToString();
                }
            }

【问题讨论】:

  • 您可以简单地在标签字符串中添加一个换行符,如下所示:Label="A: #VAL\nS: #VALX\nM: #INDEX"
  • 谢谢!有效的@jstreet

标签: c# asp.net charts bar-chart


【解决方案1】:

试试这个:

<asp:Chart ID="Chart1" runat="server">
        <Series>
            <asp:Series Name="Series1" Label="A: #VAL\nS: #VALX\nM: #INDEX">
                <Points>
                    <asp:DataPoint XValue="1" YValues="10" />
                    <asp:DataPoint XValue="2" YValues="20" />
                    <asp:DataPoint XValue="3" YValues="30" />
                </Points>
            </asp:Series>
        </Series>
        <ChartAreas>
            <asp:ChartArea Name="ChartArea1">
                <AxisY>
                    <MajorGrid LineColor="DarkGray" LineDashStyle="Dot" />
                </AxisY>
                <AxisX>
                    <MajorGrid LineColor="DarkGray" LineDashStyle="Dot" />
                </AxisX>
            </asp:ChartArea>
        </ChartAreas>
    </asp:Chart>

【讨论】:

    猜你喜欢
    • 2015-06-29
    • 2021-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-06
    • 2015-09-20
    • 2013-10-26
    相关资源
    最近更新 更多