[英]Can't read maximum Y axis value on MS chart
我在MVC3視圖上使用MS Chart生成的圖像。
圖表工作但圖表頂部的最大值非常高,我無法讀取值。
圖表不應該有最大值的保證金嗎?
我真的不知道這是否是一個真正的問題,但除非我定義一個我認為不應該用於動態值的AxisYMaximum值,否則我不能讓它看起來很好看。
是的,圖表控件應該計算清楚顯示數據所需的保證金,但根據我的經驗,它沒有。
由於y值是動態的,因此可以將AxisYMaximum動態設置為略高於最大顯示y值的值。 像這樣的東西可以設置它:
double greatestYValue = double.MinValue;
foreach (var pt in Chart1.Series[0].Points)
{
if (greatestYValue < pt.YValues[0]) greatestYValue = pt.YValues[0];
}
Chart1.ChartAreas[0].AxisY.Maximum = greatestYValue * 1.2;
// or
Chart1.ChartAreas[0].AxisY.Maximum = greatestYValue + 20;
我只是通過第一個系列中的所有點來找到最大的y值,然后將y軸最大值設置為該值的120%,或者將某個絕對值設置為高於該值,或者您需要的任何值。
您還可以使用LINQ在單行中獲得最大的y值:
double greatestYValue = Chart1.Series[0].Points.Select(p => p.YValues[0]).Max();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.