我目前正在使用VS C#并在我的表单上有一个图表。
图表工作正常,但如果系列中的任何值达到255(图表的顶部),我想要更改图表的颜色(颜色)
此刻我尝试了这个:
GRAPH_READY = false;
c.ChartAreas[0].AxisY.Maximum = 255;
c.ChartAreas[0].AxisX.Maximum = 256;
c.ChartAreas[0].AxisX.LabelStyle.Enabled = false;
c.Series[s].Points.DataBindY(vals.ToArray());
c.Series[s].ChartType = SeriesChartType.Line;
c.Series[s].BorderWidth = 3;
c.Series[s].BorderColor = Color.Red;
for (int i = 0; i < c.Series[s].Points.Count; i++)
{
//here I'm wanting to check if any of the Y values of the points are over 255
if (c.Series[s].YValuesPerPoint == 255) c.Series[s].Color = Color.Red;
else if (c.Series[s].YValuesPerPoint < 254) c.Series[s].Color = Color.Blue;
}
GRAPH_READY = true;
我尝试了上面的内容,它似乎无法工作:(图表变为蓝色,因为它从255值开始,但当我使它变为255时,它会保持蓝色。
提前致谢,
学家
答案 0 :(得分:0)
由于我不确定您绑定的值是什么,因此最好捕获上面的所有值并包含最大值。
我建议将您的第一个IF语句更改为:
if (c.Series[s].YValuesPerPoint >= 255) c.Series[s].Color = Color.Red;