C# 如何在c中使用mschart以百分比格式显示数据点#
我一直试图在ms图表中以这种格式显示数据点的百分比00.00%。我不知道该怎么做 我用这个做我的系列标签C# 如何在c中使用mschart以百分比格式显示数据点#,c#,mschart,C#,Mschart,我一直试图在ms图表中以这种格式显示数据点的百分比00.00%。我不知道该怎么做 我用这个做我的系列标签 chart1.Series[1].Label = "#PERCENT"; 结果在图表上是这样的,数值显示不正确 数据来自数据表,这就是我填充图表的方式 //Chart data points foreach(DataRow r in dt.Rows) { object wk = (r
chart1.Series[1].Label = "#PERCENT";
结果在图表上是这样的,数值显示不正确
数据来自数据表,这就是我填充图表的方式
//Chart data points
foreach(DataRow r in dt.Rows)
{
object wk = (r["week_num"]).ToString();
object fpy = (r["fpy"]); // First pass yield percentage
object thrput = (r["throughput"]).ToString();
chart1.Series[0].Points.AddXY(wk, thrput);
chart1.Series[1].Points.AddXY(wk, fpy);
}
我不知道如何正确格式化折线图中的数据点,以显示正确的值和百分比格式
有什么建议吗
编辑:
如果我删除这行
chart1.Series[1].Label = "#PERCENT";
值是正确的,但不是百分比格式
您必须格式化标签样式 请尝试
chart.ChartAreas.AxisX.LabelStyle.Format=“{00:00}”
实际上,您可能需要定制
我认为默认情况下它只显示一个数字(在点之前)
e、 g
您必须重写它并加上一个额外的零。我决定将fpy转换为十进制,并删除所有的小数点。现在,我的折线图数据点上显示了正确的值。谢谢大家的帮助!:)
那么您想要一个前导的
0
?例如04.21%
。请澄清“不正确”我编辑了我的问题
double value = .086;
Console.WriteLine(value.ToString("#0.##%", CultureInfo.InvariantCulture));
Console.WriteLine(String.Format(CultureInfo.InvariantCulture,
"{0:#0.##%}", value));
// Displays 8.6%
decimal fpy = Convert.ToDecimal(string.Format("{0:F0}", ((r["fpy"])))); // First pass yield percentage