XamDataChart の BubbleSeries では、円の大きさを RadiusMemberPath で指定したプロパティにバインドできます。
<ig:BubbleSeries ItemsSource="{StaticResource data}" XAxis="{Binding ElementName=XAxis}" YAxis="{Binding ElementName=YAxis}" XMemberPath="X" YMemberPath="Y" RadiusMemberPath="Radius"> </ig:BubbleSeries>
ただ、この大きさは各 BubbleSeries 内での相対的な値として扱われますので、例えば同じ 60 という値を RadiusMemberPath で与えたとしても BubbleSeries が異なれば同じ大きさで円が描画されるとは限りません。
複数の BubbleSeries で円の大きさをそろえたい場合は、まず SizeScale クラス オブジェクトを作成し、その MinimumValue プロパティおよび MaximumValue プロパティにデータソースの Radius 値の最小値と最大値を指定します。そして SizeScale クラス オブジェクトを BubbleSeries の RadiusScale プロパティに指定します。
var vm = (MainWindowViewModel)DataContext; var scale1 = new SizeScale() { IsLogarithmic = false, MinimumValue = vm.SampleBubbleDataItems1.Min(dataItem => dataItem.Radius), MaximumValue = vm.SampleBubbleDataItems1.Max(dataItem => dataItem.Radius) }; bubbleSeries1.RadiusScale = scale1;
これを各シリーズで実装すれば円の大きさをそろえることができます。
オンラインヘルプ
- 「散布バブル シリーズ」→「バブル サイズの構成」