编辑
2025-09-26
C#
00

目录

摘要
正文
柱状图
柱状系列
Bar Positioning(柱状图定位)

摘要

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

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

正文

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

nuget 安装ScottPlot.winforms

拖拽控件到界面

柱状图

image.png

C#
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(); }

image.png

柱状系列

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

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

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

  1. 比较数据:柱状图可以将不同类别的数据进行比较,帮助观察者快速理解数据之间的差异和趋势。
  2. 分布数据:柱状图可以显示分类数据的分布情况,例如每个区间的频率或占比。
  3. 排名数据:柱状图可以按照数值大小对类别进行排序,帮助观察者理解数据的排名情况。

image.png

C#
private void Form1_Load(object sender, EventArgs e) { var plot = formsPlot1.Plot; plot.Style.SetFont("SimSun"); List<ScottPlot.Plottables.Bar> bar1 = new List<ScottPlot.Plottables.Bar>() { new(1, 5), new(2, 7), new(3, 9) }; List<ScottPlot.Plottables.Bar> bar2 = new() { new(1, 3), new(2, 8), new(3, 5) }; List<ScottPlot.Plottables.Bar> 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<ScottPlot.Plottables.BarSeries> 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):如果柱状图的水平轴表示时间,柱状条的位置可以根据时间的顺序进行确定。每个柱状条的位置会对应于相应的时间点。
C#
private void Form1_Load(object sender, EventArgs e) { var plot = formsPlot1.Plot; List<ScottPlot.Plottables.Bar> 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); }

image.png

本文作者:技术老小子

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!