[英]How do you display data points in percentage format using mschart in c#
我一直試圖以00.00%的格式在ms圖表中顯示數據點的百分比。 我不知道如何。
我用這個做我的系列標簽
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}"
實際上,您可能必須自定義百分比說明符
我認為默認情況下它設置為僅顯示一個數字(在該點之前)
例如
double value = .086;
Console.WriteLine(value.ToString("#0.##%", CultureInfo.InvariantCulture));
Console.WriteLine(String.Format(CultureInfo.InvariantCulture,
"{0:#0.##%}", value));
// Displays 8.6%
您將不得不覆蓋它並添加一個額外的零
我決定將fpy轉換為小數並刪除所有小數點。 現在,我在折線圖數據點上顯示了正確的值。 謝謝大家的幫助! :)
decimal fpy = Convert.ToDecimal(string.Format("{0:F0}", ((r["fpy"])))); // First pass yield percentage
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.