バージョン

スケール凡例の構成

このトピックでは、ScaleLegend コントロールの構成に関する情報、また XamDataChart™ コントロールで チャート シリーズを使用する方法についても説明します。

トピックは以下のとおりです。

概要

スケール凡例は特殊なタイプの凡例で、 ValueBrushScale または CustomPaletteBrushScaleBrushes コレクションで、 BubbleSeries のバブルに色を割り振る方法を示します。BubbleSeries の FillMemberPath プロパティにマップされるデータ列からの最小値と最大値も表示します。ブラシ スケールの使用方法の詳細は、 散布バブル シリーズトピックを参照してください。また、凡例には凡例項目上に表示する凡例タイトルがあります。

プロパティ

項目凡例コントロールは、他のチャート凡例タイプのある共通プロパティを共有します。これらの共通プロパティの一覧は、 チャート凡例 トピックを参照してください。

要件

スケール凡例は、シリーズが以下の表のバインド要件を満たしている場合のみ BubbleSeries で使用できます。

Series プロパティ プロパティ タイプ バインド先のオブジェクト

LegendBase

シリーズにバインドするスケール凡例を決定します。

BrushScale

バブルのブラシ スケールを定義する ValueBrushScale または CustomPaletteBrushScale

string

ValueBrushScaleFillScale プロパティにバインドされる場合、バブルの補間ブラシのデータ列を指定。

コード例

コード スニペットは、バブルの塗りつぶしスケールとして ValueBrushScale を使用して Scale Legend を BubbleSeries にバインドする方法を示します。

xamDataChart Legends 03.png

図 2: バブルの塗りつぶしスケールとして ValueBrushScale を使用して BubbleSeries にバインドされた ScaleLegend

XAML の場合:

...
<ig:XamDataChart >
    <ig:XamDataChart.Series>
        <ig:BubbleSeries FillMemberPath="Radius"
                         Legend="{Binding ElementName=ScaleLegend}" >
            <ig:BubbleSeries.FillScale>
                <ig:ValueBrushScale MaximumValue="50" MinimumValue="5">
                    <ig:ValueBrushScale.Brushes>
                        <ig:BrushCollection>
                            <SolidColorBrush Color="#FFC6EEFB" />
                            <SolidColorBrush Color="#FF08C3FE" />
                            <SolidColorBrush Color="#FF08A5FE" />
                            <SolidColorBrush Color="#FF086AFE" />
                            <SolidColorBrush Color="#FF084CFE" />
                        </ig:BrushCollection>
                    </ig:ValueBrushScale.Brushes>
                </ig:ValueBrushScale>
            </ig:BubbleSeries.FillScale>
        </ig:BubbleSeries>
    </ig:XamDataChart.Series>
</ig:XamDataChart>
<ig:ScaleLegend x:Name="ScaleLegend" Content="Scale Legend"
                Margin="20" Height="200" Width="120"
                VerticalAlignment="Top" HorizontalAlignment="Right">
</ig:ScaleLegend >

Visual Basic の場合:

Imports Infragistics.Controls.Charts
Imports Infragistics
...
Dim scaleLegend As New ScaleLegend() With { _
    .Content = "Scale Legend", _
    .Margin = New Thickness(20), _
    .VerticalAlignment = VerticalAlignment.Top, _
    .HorizontalAlignment = HorizontalAlignment.Right _
}
Dim brushCollection As New BrushCollection()
brushCollection.Add(New SolidColorBrush(Color.FromArgb(&Hff, &HC6, &Hee, &Hfb)))
brushCollection.Add(New SolidColorBrush(Color.FromArgb(&Hff, &H08, &Hc3, &Hfe)))
brushCollection.Add(New SolidColorBrush(Color.FromArgb(&Hff, &H08, &Ha5, &Hfe)))
brushCollection.Add(New SolidColorBrush(Color.FromArgb(&Hff, &H08, &H6a, &Hfe)))
brushCollection.Add(New SolidColorBrush(Color.FromArgb(&Hff, &H08, &H4c, &Hfe)))
Dim brushScale As New ValueBrushScale()
brushScale.Brushes = brushCollection
brushScale.MinimumValue = 5
brushScale.MaximumValue = 200
Dim series As New BubbleSeries()
series.FillScale = brushScale
series.FillMemberPath = "Radius"
series.Legend = scaleLegend
...
Dim dataChart As New XamDataChart()
dataChart.Series.Add(series)

C# の場合:

using Infragistics.Controls.Charts;
using Infragistics;
var scaleLegend = new ScaleLegend
{
    Content = "Scale Legend",
    Margin = new Thickness(20),
    VerticalAlignment = VerticalAlignment.Top,
    HorizontalAlignment = HorizontalAlignment.Right
};
var brushCollection = new BrushCollection();
brushCollection.Add(new SolidColorBrush(Color.FromArgb(0xFF, 0xC6, 0xEE, 0xFB)));
brushCollection.Add(new SolidColorBrush(Color.FromArgb(0xFF, 0x08, 0xC3, 0xFE)));
brushCollection.Add(new SolidColorBrush(Color.FromArgb(0xFF, 0x08, 0xA5, 0xFE)));
brushCollection.Add(new SolidColorBrush(Color.FromArgb(0xFF, 0x08, 0x6A, 0xFE)));
brushCollection.Add(new SolidColorBrush(Color.FromArgb(0xFF, 0x08, 0x4C, 0xFE)));
var brushScale = new ValueBrushScale();
brushScale.Brushes = brushCollection;
brushScale.IsLogarithmic = false;
brushScale.MinimumValue = 5;
brushScale.MaximumValue = 200;
var series = new BubbleSeries();
series.FillScale = brushScale;
series.FillMemberPath = "Radius";
series.Legend = scaleLegend;
...
var DataChart = new XamDataChart();
dataChart.Series.Add(series);