X轴从0开始

时间:2014-09-27 12:21:18

标签: c# charts

我知道这个问题已经被问了很多次,但似乎没有人提出解决方案(至少我找不到)。

所以,我有一个应用程序图表,我已经添加了值

chart1.Series["Life"].Points.AddY(1);
chart1.Series["Life"].Points.AddY(30);
chart1.Series["Life"].Points.AddY(20);
chart1.Series["Life"].Points.AddY(50);

我得到的图表如


现在这首先是非常令人不悦的,因为X需要从原点开始。 那么,问题1 - 为什么从1开始呢? 问题2 - 我该如何解决这个问题? 这是我第一次用c#制作图表,所以这听起来像是一个微不足道的困境。

另外,就像我提到的那样,我做了我的研究,我发现我应该做一些像

这样的事情
chart1.ChartAreas[0].AxisX.Interval = 0;
chart1.ChartAreas[0].AxisX.IsStartedFromZero = true;
chart1.ChartAreas[0].AxisX.Minimum = 0;    //made this -1
chart1.ChartAreas[0].AxisX.Crossing = 0;   //and this too to -1

这没有用,所以我决定用最小值和交叉点玩一点,给它们-1。没有工作。图表不仅移动了,而且还是从1开始?

2 个答案:

答案 0 :(得分:2)

所以你想让你的图表X轴从1开始? 为什么不使用:

chart1.ChartAreas[0].AxisX.Minimum = 1;  

或者你希望你的积分从0开始?为什么不使用:

chart1.ChartAreas["Life"].AxisX.Minimum = 0;
chart1.Series["Life"].Points.AddXY(0,1);

答案 1 :(得分:2)

您也可以使用Points.AddXY方法指定X坐标。要确保该行从原始前置数据点开始(0, 0)

var series = chart1.Series["Life"];
series.Points.AddXY(0, 0);
series.Points.AddXY(1, 1);
series.Points.AddXY(2, 30);
series.Points.AddXY(3, 20);
series.Points.AddXY(4, 50);
chart1.ChartAreas[0].AxisX.Minimum = 0;