SparrowChart で凡例をカスタマイズ

この記事では SparrowChart で凡例(グラフとデータ)をカスタマイズする記述を紹介します。

凡例はほぼ自分好みにカスタマイズできそうです。

サンプルプログラムの実行結果 サンプルプログラムの実行結果

このサンプルもカスタマイズ自体は XAML のみでできます。ソースコード等はこちらから

MainWindow.xaml
22
23
24
25
26
27
28
29
30
<sc:SparrowChart.Legend>
<sc:Legend Header="凡例" LegendPosition="Inside" HorizontalAlignment="Right" VerticalAlignment="Bottom" Dock="Right" />
</sc:SparrowChart.Legend>

<sc:SparrowChart.Series>
<sc:LineSeries Label="f(x)=sqrt(x)" PointsSource="{Binding Path=SqrtPoints}" XPath="X" YPath="Fx" />
<sc:LineSeries Label="f(x)=ln(x)" PointsSource="{Binding Path=LnPoints}" XPath="X" YPath="Fx" />
<sc:LineSeries Label="f(x)=x/2-1" PointsSource="{Binding Path=LinePoints}" XPath="X" YPath="Fx" />
</sc:SparrowChart.Series>

凡例とグラフの部分だけ載せています。凡例は、 SparrowChart.LegendLegend を設定することで出現します。 凡例の中の一覧には ***SeriesLabel 属性で指定した内容が表示されます。

表示場所の指定に使うと思われる属性を紹介しておくと、

LegendPosition
凡例がグラフの外にあるか中にあるか
Dock
凡例の中身のリストをどう並べるか(?)
HorizontalAlignment, VerticalAlignment
他のコントロールと同じく凡例を置く場所