2017-07-31 67 views
0

我在Visual Studio中使用C#使用Dundas圖表。C#Dundas圖表自動縮放Y軸沒有超過100%的值

我的圖表顯示百分比值,如果我不使用最大y軸值,圖表會自動縮放軸 - 但是,有時它會顯示超過100%的值(即使沒有一個值實際超過100% )。

如何允許軸根據圖表值更改大小,但絕不允許它超過100%?

+0

[This](https://stackoverflow.com/questions/45086995/winforms-chart-set-minimum-y-axis-display-range/45091054#45091054)可能會有所幫助。 – TaW

回答

0

對於任何感興趣的人,我決定以編程方式爲每個圖表設置Y軸的最大值。

下面的代碼被用來從給定的陣列獲得的最大值,並返回100或最大值向上舍入爲10的倍數:

int GetYAxisMaxValue(decimal[] yValues) 
    { 
     var max = yValues.Max(); 
     var output = 0m; 

     if (yValues.Max() % 10 == 0) output = max; 
     else output = max + (10 - max % 10); 

     if (output > 100) return 100; 
     else return Convert.ToInt32(output); 
    } 

這然後被用於創建該圖表,設置:

 chart.ChartAreas["Default"].AxisY.Maximum = GetYAxisMaxValue(...); 

希望這會有所幫助。