263.C# ScottPlot Bar Plot 柱图

263.C# ScottPlot Bar Plot 柱图

编码文章call10242025-04-15 10:59:0020A+A-

摘要


在C#的ScottPlot库中,Bar Plot(柱状图)是一种常见的数据可视化类型,用于显示不同类别或组之间的比较。

柱状图通常由垂直的矩形柱组成,每个柱代表一个类别或组,并且柱的高度表示该类别或组的数值大小。

正文


  1. 数据比较:柱状图可用于比较不同类别或组之间的数值差异。例如,您可以使用柱状图比较不同产品的销售额,或者比较不同地区的人口数量。
  2. 趋势分析:柱状图还可以用于显示数据的趋势和变化。通过在不同时间点或时间段绘制柱状图,可以观察到数据的变化趋势,例如销售额的季度增长情况或每月的用户活跃度。
  3. 分类数据:柱状图可用于显示分类数据的分布情况。例如,您可以使用柱状图显示每个学科的考试成绩分布,或者显示每个年龄段的人口分布。

nuget 安装ScottPlot.winforms

拖拽控件到界面

柱状图

private void Form1_Load(object sender, EventArgs e)
{
    var plot = formsPlot1.Plot;

    double[] values = { 3, 10, 8, 20, 4 };

    plot.Add.Bar(values);

    //自动调整图表的轴范围,以适应数据的显示。
    plot.AutoScale();
}

柱状系列

Bar Series(柱状系列)是指一组柱状图形成的数据系列。柱状图是一种常用的图表类型,用于显示不同类别或组之间的比较或分布情况。

Bar Series通常用于表示分类数据,其中每个类别都对应一个柱状条。每个柱状条的高度表示该类别的数值或频率。柱状图的宽度可以相等或不等,取决于数据的特点和可视化的需求。

柱状图可以用于多种应用场景,例如:

  1. 比较数据:柱状图可以将不同类别的数据进行比较,帮助观察者快速理解数据之间的差异和趋势。
  2. 分布数据:柱状图可以显示分类数据的分布情况,例如每个区间的频率或占比。
  3. 排名数据:柱状图可以按照数值大小对类别进行排序,帮助观察者理解数据的排名情况。
private void Form1_Load(object sender, EventArgs e)
{
    var plot = formsPlot1.Plot;
    plot.Style.SetFont("SimSun");

    List bar1 = new List() { new(1, 5), new(2, 7), new(3, 9) };
    List bar2 = new() { new(1, 3), new(2, 8), new(3, 5) };
    List bar3 = new() { new(1, 7), new(2, 10), new(3, 7) };

    //bar1 颜色与标签
    ScottPlot.Plottables.BarSeries series1 = new()
    {
        Bars = bar1,
        Label = "魏国",
        Color = Colors.Red
    };
    //bar2 颜色与标签
    ScottPlot.Plottables.BarSeries series2 = new()
    {
        Bars = bar2,
        Label = "蜀国",
        Color = Colors.Green
    };
    //bar3 颜色与标签
    ScottPlot.Plottables.BarSeries series3 = new()
    {
        Bars = bar3,
        Label = "吴国",
        Color = Colors.Blue,
    };

    List seriesList = new() { series1, series2, series3 };
    plot.Add.Bar(seriesList);
    plot.AutoScale();
    //防止Legend乱码
    var font = new ScottPlot.FontStyle();
    font.Name = "SimSun";
    plot.GetLegend().Font = font;
    plot.Legend();

}

Bar Positioning(柱状图定位)

Bar Positioning(柱状图定位)是指在柱状图中确定每个柱状条的位置。在柱状图中,每个柱状条代表一个类别或组,并且柱状条的位置对于正确表示数据是至关重要的。

在柱状图中,有几种常见的柱状条定位方式:

  1. 分类定位(Categorical Positioning):每个柱状条的位置根据类别的名称或标签进行确定。通常,类别名称会沿着水平轴或垂直轴进行排列,并且柱状条会在相应的位置上绘制。
  2. 数值定位(Numerical Positioning):每个柱状条的位置根据数值轴上的数值进行确定。柱状条的位置会根据数值的大小而变化,较大的数值会对应较高的柱状条,较小的数值会对应较低的柱状条。
  3. 时间定位(Time Positioning):如果柱状图的水平轴表示时间,柱状条的位置可以根据时间的顺序进行确定。每个柱状条的位置会对应于相应的时间点。
private void Form1_Load(object sender, EventArgs e)
{
    var plot = formsPlot1.Plot;
    List bars = new()
    {
        //ValuesBase为最低点,Position为x轴位置,Value为数值
        new() { Position = 5, Value = 5, ValueBase = 3, },
        new() { Position = 10, Value = 7, ValueBase = 0, },
        new() { Position = 15, Value = 3, ValueBase = 2, },
    };
    plot.Add.Bar(bars);
}

点击这里复制本文地址 以上内容由文彬编程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

文彬编程网 © All Rights Reserved.  蜀ICP备2024111239号-4