上部のラベル
ラベル付きの棒はデフォルトでは1つずつレンダリングされますが、これにより棒のラベルが他の棒と重なる可能性があります。棒グラフは、他のプロット可能オブジェクトの上であっても、ラベルを最後にレンダリングするように設定できます。
ScottPlot.Plot myPlot = new();
double[] values = Generate.Consecutive(5, first: 1);
// 2つの棒プロットを作成する
var bars1 = myPlot.Add.Bars(values);
var bars2 = myPlot.Add.Bars(values);
// いずれかの棒で LabelsOnTop 機能を有効にする
bars2.LabelsOnTop = true;
// 効果を示すために各棒にラベルを付けてスタイルを設定する
static void StyleBar(ScottPlot.Plottables.BarPlot barPlot, double xOffset)
{
barPlot.ValueLabelStyle.FontSize = 32;
for (int i = 0; i < barPlot.Bars.Count; i++)
{
var bar = barPlot.Bars[i];
bar.Label = i.ToString();
bar.CenterLabel = true;
bar.Position = i * .5 + xOffset;
bar.FillColor = bar.FillColor.WithAlpha(.9);
}
}
StyleBar(bars1, 0);
StyleBar(bars2, 4);
myPlot.Add.Text("デフォルト", 0, 6);
myPlot.Add.Text("LabelsOnTop", 4, 6);
myPlot.HideGrid();
myPlot.SavePng("demo.png", 400, 300);
このレシピは、棒プロットカテゴリに含まれる多数のレシピの1つです
