2016-08-12 38 views
0

我目前正在模塊上創建圖表以顯示數據。 我使用System.Windows.Forms.DataVisualization.Charting.Chart我無法爲我的帶狀線的大小獲取正確的值

我有兩條線,即使我給他們的StripWidth參數的值相同:

在這裏,我們MaxY在6000,平均在2300和門檻在2500

// We can't use a fixed size because if the y axis is too high or too small it may look too big or too small 
this.chart1.ChartAreas[0].Axes[1].StripLines[0].StripWidth = maxY/100; 
this.chart1.ChartAreas[0].Axes[1].StripLines[1].StripWidth = maxY/100; 

// add the striplines 
this.chart1.ChartAreas[0].Axes[1].StripLines[0].Interval = 0; 
this.chart1.ChartAreas[0].Axes[1].StripLines[1].Interval = 0; 

this.chart1.ChartAreas[0].Axes[1].StripLines[0].IntervalOffset = average; 
this.chart1.ChartAreas[0].Axes[1].StripLines[1].IntervalOffset = threshold; 

他們往往最終與不同的大小,這是微妙的,但我可以看到它,我不明白爲什麼發生。

example

+1

它們與我的尺寸相同 – Steve

回答

2

這僅僅是一個錯覺:屏幕截圖顯示兩條線的3個像素相同的寬度!

越暗,綠色的看起來更緊一點,但是當你算像素,你會看到他們是相同的:

enter image description here

爲了避免影響我建議給他們用一種顏色相同亮度

另請注意,由於四捨五入,您可能會始終得到非完美的亞像素抗鋸齒效果。

最後(也是最重要的):在屏幕截圖網格線增加了錯覺。再一次:爲避免這種情況,請確保網格線和帶狀線具有更明顯的亮度值!

在photoshop中檢查:在屏幕截圖中,您有第一個帶狀線brightness=109,網格線brightness=100,它們基本相同,所以它們合併,寬度從3到4個像素。但第二條帶有brightness=50。這導致了可察覺的33%的額外寬度。

請注意網格線的顏色可以很容易地設置爲帶狀線顏色..

相關問題