绘图仪:RadialGauge
 

径向规

径向量规图表将标量数据显示为圆形量规。

var plt = new ScottPlot.Plot(600, 400);

double[] values = { 100, 80, 65, 45, 20 };
plt.AddRadialGauge(values);

plt.SaveFig("radialgauge_quickstart.png");
 

仪表颜色

仪表颜色可以通过更改默认调色板进行自定义。

var plt = new ScottPlot.Plot(600, 400);

double[] values = { 100, 80, 65, 45, 20 };
plt.Palette = ScottPlot.Drawing.Palette.Nord;
plt.AddRadialGauge(values);

plt.SaveFig("radialgauge_colors.png");
 

负值

径向仪表图支持正值和负值。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, -65, 45, -20 };
plt.AddRadialGauge(values);

plt.SaveFig("radialgauge_negative.png");
 

顺序计量模式

顺序仪表模式表示每个仪表的底部从上一个仪表的顶部开始。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 50 };

var gauges = plt.AddRadialGauge(values);
gauges.GaugeMode = ScottPlot.RadialGaugeMode.Sequential;

plt.SaveFig("radialgauge_mode.png");
 

倒序

默认情况下,仪表从中心向外显示,但可以自定义顺序。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 50 };

var gauges = plt.AddRadialGauge(values);
gauges.GaugeMode = ScottPlot.RadialGaugeMode.Sequential;
gauges.OrderInsideOut = false;

plt.SaveFig("radialgauge_reverse.png");
 

单规模式

单仪表模式将所有仪表作为一个仪表堆叠在一起。这对于显示由许多单独的较小仪表组成的进度仪表非常有用。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45 };

var gauges = plt.AddRadialGauge(values);
gauges.GaugeMode = ScottPlot.RadialGaugeMode.SingleGauge;
gauges.MaximumAngle = 180;
gauges.StartingAngle = 180;

plt.SaveFig("radialgauge_single.png");
 

轨距方向

仪表的方向可以定制。默认情况下使用顺时针。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.Clockwise = false;

plt.SaveFig("radialgauge_direction.png");
 

规格尺寸

仪表之间的空隙可以调整为其宽度的一小部分。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };
var gauges = plt.AddRadialGauge(values);
gauges.SpaceFraction = .05;

plt.SaveFig("radialgauge_size.png");
 

仪表盖

可以为仪表的起点和终点定制盖子。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.CircularBackground = false;
gauges.StartCap = System.Drawing.Drawing2D.LineCap.Flat;
gauges.EndCap = System.Drawing.Drawing2D.LineCap.DiamondAnchor;

plt.SaveFig("radialgauge_caps.png");
 

仪表启动角

仪表的起始角度可以定制。270表示北(默认值),0表示东,90表示南,180表示西,等等。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.StartingAngle = 180;

plt.SaveFig("radialgauge_start.png");
 

仪表角度范围

默认情况下,仪表为整圈(360度),但可以通过自定义仪表尺寸来创建较小的仪表。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.MaximumAngle = 180;

plt.SaveFig("radialgauge_range.png");
 

显示级别

默认情况下,每个仪表的值显示为文本,但可以覆盖此行为。请注意,这与标签fiels不同,fiels是legened中出现的标签。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.ShowLevels = false;

plt.SaveFig("radialgauge_levels.png");
 

仪表标签位置

默认情况下,仪表级别文本位于每个仪表的顶部,但此位置可由用户调整。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.LabelPositionFraction = 0;

plt.SaveFig("radialgauge_labelpos.png");
 

规格标签字体百分比

仪表级别文字的大小为仪表宽度的一部分。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.FontSizeFraction = .4;

plt.SaveFig("radialgauge_labelfontsize.png");
 

仪表标签颜色

级别文本字体可以自定义。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.Font.Color = Color.Black;

plt.SaveFig("radialgauge_labelcolor.png");
 

图例中的仪表标签

如果指定了径向仪表标签,则它们将出现在图例中。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.Labels = new string[] { "alpha", "beta", "gamma", "delta", "epsilon" };
plt.Legend(true);

plt.SaveFig("radialgauge_legend.png");
 

背景仪表变暗

默认情况下,每个仪表的整个范围绘制为半透明环。透明度的大小可以根据需要进行调整。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.BackgroundTransparencyFraction = .5;

plt.SaveFig("radialgauge_backdim.png");
 

背景规范化

默认情况下,仪表背景绘制为整圈。可以禁用此行为以绘制非圆形仪表的部分背景。

var plt = new ScottPlot.Plot(600, 400);

plt.Palette = ScottPlot.Drawing.Palette.Nord;
double[] values = { 100, 80, 65, 45, 20 };

var gauges = plt.AddRadialGauge(values);
gauges.CircularBackground = false;
gauges.MaximumAngle = 180;
gauges.StartingAngle = 180;

plt.SaveFig("radialgauge_backnorm.png");