【发布时间】: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