如何使用WinForms图表制作简单的直方图?

时间:2018-12-06 01:17:53

标签: c# winforms charts histogram

我想创建一个简单的直方图,例如:CLICK。对于我的代码,它看起来完全不同:CLICK。我的问题是:

  • 多余的YAxis标签
  • 数字显示太频繁(我希望每个轴最多5-6个数字)
  • 图表后面的方格图案太密
  • 条形图不规则分布(有一些空白,黑线)

要实现良好的直方图,我应该改变什么?

我的代码:

ChartR.Legends.Clear();
ChartR.ChartAreas[0].AxisY.Interval = 5;
ChartR.ChartAreas[0].AxisX.Interval = 5;
ChartR.ChartAreas[0].AxisY2.Enabled = AxisEnabled.False;

var dataPointSeries = new Series
{
    Name = "Series 1",
    Color = Color.Red,
    IsVisibleInLegend = true,
    ChartType = SeriesChartType.Column
};

for (int i = 0; i < 100; i++)
{
    dataPointSeries.Points.AddXY(i, i);
}

ChartR.Series.Add(dataPointSeries);

1 个答案:

答案 0 :(得分:1)

感谢@TaW,对您有所帮助!我做了这样的直方图:

ChartR.ChartAreas[0].AxisX.MajorGrid.LineWidth = 0;
ChartR.ChartAreas[0].AxisY.MajorGrid.LineWidth = 0;
ChartR.ChartAreas[0].AxisY.Interval = 50;
ChartR.ChartAreas[0].AxisX.Interval = 20;
ChartR.ChartAreas[0].AxisY2.Enabled = AxisEnabled.False;

var dataPointSeries = new Series
{
    Name = "Series 1",
    Color = Color.Red,
    ChartType = SeriesChartType.Column
};

for (int i = 2; i < 255; i++)
{
    dataPointSeries.Points.AddXY(i, i);
}

ChartR.Series.Add(dataPointSeries);
ChartR.Series["Series 1"]["PixelPointWidth"] = "1";