0

嗨,我目前正在尝试让条形图与 x 轴上的数字对齐。正如您在下图中看到的,图表中的条形图似乎与左对齐或右对齐。

[URL=http://imageshack.us/photo/my-images/528/stackoverflowexample.png/][IMG=http://img528.imageshack.us/img528/19/stackoverflowexample.png][/IMG][ /网址]

使用 [URL=http://imageshack.us]ImageShack.us[/URL] 上传

我想知道是否有一种方法可以使用代码行使它们直接对齐数字 1、2 和 3?

我还想知道是否可以将 1、2 和 3 更改为名称 temprature、vcc 和 light?

我已经对其进行了一些调查,但无法找到解决此问题的方法(从我尝试过的注释掉的代码行中可以看出),这就是我求助于你们的原因。我已经发布了我的代码下面(稍作修改,因此它可以在没有我的变量的任何 c# 中工作)。

感谢您花时间阅读本文

chart1.ChartAreas.Add("area");
                    //chart1.ChartAreas["area"].AxisX.Minimum = 0;
                    //chart1.ChartAreas["area"].AxisX.Maximum = 2;
                    //chart1.ChartAreas["area"].AxisX.Interval = 1;
                    //chart1.ChartAreas["area"].AxisX.IntervalAutoMode;
                    chart1.ChartAreas["area"].AxisY.Minimum = 0;
                    chart1.ChartAreas["area"].AxisY.Maximum = sumLight + 100;
                    chart1.ChartAreas["area"].AxisY.Interval = 50;
                    chart1.ChartAreas["area"].AxisY.Title = "Average Value";
                    //chart1.ChartAreas["area"].AxisX.Title = "Speed (m/s)";

                    chart1.Series.Add("Temprature");
                    chart1.Series.Add("VCC");
                    chart1.Series.Add("Light");

                    chart1.Series["Temprature"].Color = Color.Red;
                    chart1.Series["VCC"].Color = Color.Green;
                    chart1.Series["Light"].Color = Color.Yellow;

                    chart1.Series["Temprature"].Points.AddXY(1, 78.32);
                    chart1.Series["VCC"].Points.AddXY(2, 3.92);
                    chart1.Series["Light"].Points.AddXY(3, 333);
                    chart1.Series["Temprature"].IsValueShownAsLabel = true;
                    chart1.Series["VCC"].IsValueShownAsLabel = true;
                    chart1.Series["Light"].IsValueShownAsLabel = true;

                    chart1.Legends.Add("legend");
                    chart1.Titles.Add("Average for Temperature, Light & VCC using timestamp");


                    chart1.Visible = true;
4

1 回答 1

0

我猜你可能会通过插入空数据点来解决问题。所以这个块:

chart1.Series["Temprature"].Points.AddXY(1, 78.32);
chart1.Series["VCC"].Points.AddXY(2, 3.92);
chart1.Series["Light"].Points.AddXY(3, 333);

应该成为

chart1.Series["Temprature"].Points.AddXY(1, 78.32);
chart1.Series["Temprature"].Points.Add(new DataPoint(2,0){IsEmpty=true});
chart1.Series["Temprature"].Points.Add(new DataPoint(3,0){IsEmpty=true});

chart1.Series["VCC"].Points.Add(new DataPoint(1,0){IsEmpty=true});
chart1.Series["VCC"].Points.AddXY(2, 3.92);
chart1.Series["VCC"].Points.Add(new DataPoint(3,0){IsEmpty=true});

chart1.Series["Light"].Points.Add(new DataPoint(1,0){IsEmpty=true});
chart1.Series["Light"].Points.Add(new DataPoint(2,0){IsEmpty=true});
chart1.Series["Light"].Points.AddXY(3, 333);

此外,您可以尝试仅使用 3 个彩色 DataPoints 的系列:

chart1.Series[0].Points.AddXY("Temprature", 78.32);
chart1.Series[0].Points[chart1.Series[0].Points.Count - 1].Color = Color.Red;
chart1.Series[0].Points.AddXY("VCC", 3.92);
chart1.Series[0].Points[chart1.Series[0].Points.Count - 1].Color = Color.Green;
chart1.Series[0].Points.AddXY("Light", 333);
chart1.Series[0].Points[chart1.Series[0].Points.Count - 1].Color = Color.Yellow;
于 2012-11-26T12:38:26.820 回答