バージョン

多次元データ (OLAP データ) を視覚化

トピックの概要

目的

このトピックでは、XamDataChart™ コントロールで多次元データ (OnLine Analytical Processing (OLAP) データ) を表示する方法をコード例を示して説明します。

前提条件

以下の表は、このトピックを理解するための前提条件として必要なトピックを示しています。

タイプ コンテンツ

概念

トピック 目的

このトピックでは、 xamPivotGrid™ コントロールでサポートされるデータ ソースの概要について説明しています。

このトピックでは、FlatDataSource クラスを使用して IEnumerable データを xamPivotGrid で表示する方法について説明します。

Visual Studio 2013-2017 および Expression Blend で単純なデータ バインディングを使用して XamDataChart コントロールを追加する方法を学習します。

このセクションには、XamDataChart コントロールを使用したデータ アクセスに特化したトピックが含まれています。

XamDataChart コントロールに OLAP データを表示 – 概念的な概要

XamDataChart に OLAP データを表示概要

XamDataChart コントロールに OLAP データを表示するためには、多次元データ セットを表示することに特化して設計された、特別なタイプの軸、OlapXAxis を構成する必要があります。XamDataChart に OLAP データを表示することは別として、OlapXAxis によってデータをドリルダウンして、シリーズがプロットされる値のためにデータ (列または行) から軸を選択することが可能となります。

OlapXAxis には、 xamPivotGrid コントロールのプロパティと似た DataSource プロパティがあります。このプロパティによって xamPivotGridXamDataChart でデータ ソースを使用することが可能となります。したがってグリッドに表示される同じデータをチャートで表示できます。以下の画像は同じデータ ソースにバインドされた XamPivotGridXamDataChart を示します(明確さのために画像にツールチップが追加されます)。

xamDataChart Visualizing Multi Dimensional Data 01.png

XamDataChart コントロールに OLAP データを表示 – 手順

概要

この手順は XamDataChart に OLAP データを表示するために必要な手順を説明します。

この手順で概略される特定の例はフラットなデータ ソースとチャートに表示されるサンプル コンテンツを生成するために営業データ サンプル (SalesDataSample クラス) を使用しています。データ ソースの構成方法の詳細については、「FlatDataSource の使用」トピックを参照してください。

手順では、ユーザーが列、行、フィルター、メジャーのための項目をデータ ソースから選択できるようにセレクターを追加することをオプションで提案します (手順 4)。このセレクターは xamPivotDataSelector コンポーネントのインスタンスから実装されます。

プレビュー

以下のスクリーンショットは最終結果のプレビューです。

xamDataChart Visualizing Multi Dimensional Data 02.png

要件

この手順を実行するには、以下が必要です。

  • WPF Visual Studio 2013-2017 アプリケーション プロジェクト。

  • 以下のアセンブリへの参照

    • InfragisticsWPF

    • InfragisticsWPF.DataVisualization

    • InfragisticsWPF.Olap

    • InfragisticsWPF.Olap.FlatData (フラットなデータを使用していない場合、それぞれのアセンブリを含む)

    • InfragisticsWPF.Controls.Grids.XamPivotGrid (XamPivotDataSelector を使用したい場合に限り必要)

    • InfragisticsWPF.Controls.Charts.XamDataChart

    • InfragisticsWPF.Controls.Charts.Olap

  • アプリケーションに追加された 営業データ サンプル リソースからの SalesDataSample クラス

概要

以下はプロセスの概念的概要です。

1. データ ソースの構成

2.データ チャートを追加します。

3. OlapXAxis を構成します。

4. (オプション) ピボット データ セレクターを追加します。

手順

1.データ ソースを構成します。

階層とメジャーを割り当てるために XamPivotDataSelector コントロールを使用しないことを選択する場合、このために他のメカニズムを提供すべきです。または以下の例のように、列とメジャーとしていくつかの初期項目をデータ ソースに割り当てます。以下のコードはページ/ユーザー コントロールのリソースセクションに配置すべきです。

XAML の場合:

<models:SalesDataSample x:Key="DataSample"/>
<olap:FlatDataSource
    x:Key="DataSource"
    Columns="[Date].[Date]"
    Measures="AmountOfSale, NumberOfUnits"
    MeasureListLocation="Rows"
    ItemsSource="{StaticResource DataSample}" />

2.データ チャートを追加します。

1. xamDataChart コントロールをページに追加します。 2. 必要な軸を追加します。

  1. x-軸を追加します。 OlapXAxisXamDataChart チャートの Axes コレクションに追加します。

  2. x-軸を追加します。

NumericYAxisXamDataChart チャートの Axes コレクションに追加します。

表示されるデータに数値が含まれているため、データ チャート シリーズを正しく表示するためにこのような Y 軸が必要です。

3.OLAP x-軸を構成します。

1.追加された Y 軸を OLAP-x-軸に添付します。

YAxis プロパティを前の手順で定義した NumericYAxis に設定します。

2.データ ソースを設定します。

DataSource プロパティを手順 1 で定義したデータ ソースに設定します。

3. データが読み取られるデータ軸を構成します。

これを実行するには、 OlapAxisSource プロパティを設定します。このプロパティはデータがデータ ソースの行から読み取られるのか、それともデータ ソースの列から読み取られるのかを決定します。

列を選択する場合、データ チャートの OlapXAxis にデータ ソースの各列が表示されます。行ごとに、データ チャート シリーズが生成され表示されます。XamDataChart に OLAP データを表示概要ブロックの図は、ピボット グリッド コントロールと OlapAxisSourceColumns に設定されている OLAP 軸を含むデータ チャートを示します。

4. シリーズ タイプの構成

シリーズ タイプを構成するには、 DefaultSeries プロパティを設定します(構成しない場合、デフォルトの列シリーズが表示されます)。

4.(オプション) ピボット データ セレクターを追加します。

以下のコード スニペットはデータ チャートと同じデータ ソースにバインドされる XamPivotDataSelector コンポーネントを追加します。

XAML の場合:

<ig:Expander Grid.Column="1">
 <ig:XamPivotDataSelector DataSource="{StaticResource DataSource}"/>
</ig:Expander>

コード

以下はこの手順の完全な XAML コードです。

XAML の場合:

<UserControl
      …
      xmlns:ig="http://schemas.infragistics.com/xaml"
      xmlns:models="clr-namespace:Infragistics.Samples.Data.Models"
      xmlns:olap="http://schemas.infragistics.com/olap">
    <UserControl.Resources>
        <models:SalesDataSample x:Key="DataSample"/>
        <olap:FlatDataSource
            x:Key="DataSource"
            Columns="[Date].[Date]"
            Measures="AmountOfSale, NumberOfUnits"
            MeasureListLocation="Rows"
            ItemsSource="{StaticResource DataSample}" />
    </UserControl.Resources>
    <Grid x:Name="LayoutRoot" Background="White">
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
            <ColumnDefinition Width="Auto"/>
        </Grid.ColumnDefinitions>
        <ig:XamDataChart OverviewPlusDetailPaneVisibility="Visible" HorizontalZoomable="True" VerticalZoomable="True">
            <ig:XamDataChart.Axes>
                <ig:OlapXAxis
                    YAxis="{Binding ElementName=YAxis}"
                    DataSource="{StaticResource DataSource}"
                    OlapAxisSource="Columns"
                    DefaultSeries="ColumnSeries"/>
                <ig:NumericYAxis x:Name="YAxis" MinimumValue="0"/>
            </ig:XamDataChart.Axes>
        </ig:XamDataChart>
        <!--<ig:Expander Grid.Column="1">
        <ig:XamPivotDataSelector DataSource="{StaticResource DataSource}"/>
        </ig:Expander>-->
    </Grid>
</UserControl>

関連コンテンツ

このトピックの追加情報については、以下のトピックも合わせてご参照ください。

トピック 目的

このトピックdは、XamDataChart コントロールで 1 つのチャートに複数シリーズ タイプを表示する、または多次元データ (OLAP データ) で作業する時に積層シリーズを使用する方法について説明します。

このトピックでは、xamPivotGrid および XamDataChart コントロールの間のインタラクションの構築方法を説明します。

このトピックでは、xamPivotDataSelector コントロールを紹介します。