レッスン 2: 折れ線グラフとスパークライン グラフの追加 (SSRS)
このレッスンでは、AdventureWorks の販売員向けの次の質問に回答する際に役立つレポート アイテムを Employee_Sales_Summary_2008R2 レポートに追加する方法を学習します。
- 自分の季節売上は前年と比較してどの程度か。
マトリックスに埋め込まれた折れ線グラフとスパークライン グラフを追加し、EmployeeSalesYearOverYear2008R2 データセットから前年比の売上データを視覚化します。
学習する内容
このレッスンでは、次の作業を行います。
数年間の各月の売上を折れ線グラフで表示します。
入れ子になったスパークライン グラフを追加することで、マトリックス内に同じデータを表示します。
1 年ごとに色が変わるように、各グラフの線の色を制御するカスタム コードを追加します。
説明テキスト、折れ線グラフ、およびマトリックス用の四角形のコンテナーを追加します。
シナリオ テキスト内の単語を使用したブックマークを、対応するデータ領域に追加します。
このチュートリアルの推定所要時間: 15 分
必要条件
必要条件については、「AdventureWorks 2008R2 サンプル レポートの前提条件 (SSRS)」を参照してください。
このレッスンでは、「レッスン 1: 共有データセットの作成とレポート パラメーターの構成 (SSRS)」を完了していることを前提としています。
ヒント
最初にデザイン画面でデータ領域を構成してから、四角形にその領域を追加する操作について、ヒントを確認してください。詳細については、「レポート デザインに関するヒント (レポート ビルダー 3.0 および SSRS)」を参照してください。
プロジェクトおよびレポートを開くには
Business Intelligence Development Studio で、前のレッスンで作成したレポート サーバー プロジェクト AdventureWorks 2008R2 サンプル レポートを開きます。
Employee_Sales_Summary_2008R2 レポートを開きます。
グラフ用の領域を確保するためにレポートの高さを拡張するには
パラメーター、データ ソース、およびデータセットに関する情報テキストが含まれている四角形を選択します。
下方向キーを押して、四角形をページの下方向に移動します。レポートの高さが自動的に拡張されます。
必要に応じて、[レポート] ツール バーの [ズーム] を使用して、レポート デザイン領域の表示を調整します。
折れ線グラフを追加および構成するには
シナリオのテキスト ボックスの下に、グラフを挿入します。
[グラフの種類を選択] で、ツールヒントを使用して [折れ線] グラフを選択します。
レポートの左側の、切り替えアイテム付きのテキスト ボックスの下に、グラフをドラッグします。Ctrl + 方向キーを使用して、グラフの位置を微調整します。
グラフが選択され、プロパティ ペインにグラフのプロパティが表示されることを確認します。
Shift + 方向キーを使用して、グラフの幅と高さを約 3.75in に設定します。プロパティ ペインで [サイズ] を展開し、幅と高さを確認します。
EmployeeSalesYearOverYear2008R2 データセットから、次の手順を実行します。
Sales をグラフ データ ペインの [値] にドラッグします。これにより、縦軸が定義されます。
Month を [カテゴリ グループ] にドラッグします。これにより、横軸が定義されます。
グラフ データ ペインで、Month を右クリックして、[カテゴリ グループのプロパティ] を構成します。[並べ替え] ページで、MonthNumber を基準に並べ替えます。これにより、横軸の並べ替え順序が制御されます。
Year を [系列グループ] にドラッグします。これにより、年ごとに 1 つの折れ線が追加されます。
系列が選択されるまでグラフを右クリックし、[系列のプロパティ] を開きます。
[罫線] ページで、次の手順を実行します。
[線のスタイル] を [実線] に設定します。
[線の幅] を「2pt」に設定します。
線の色は、既定の色パレットから自動的に割り当てられます。色は、系列グループの並べ替え順序に基づいて割り当てられます。
グラフのタイトルと軸を構成するには
グラフのタイトルを「Yearly Sales Comparison」に変更します。
系列の凡例の位置を横軸の下に変更します。
"横軸のタイトル" を削除します。
縦軸のタイトルを「In Thousands」に変更します。
[縦軸のプロパティ] を開きます。次の手順を実行します。
[数値] ページの [カテゴリ] で、[通貨] をクリックします。
[小数点以下桁数] を 0 に設定します。
[位取り区切り記号を使用する] チェック ボックスをオンにします。
[値の表示単位] チェック ボックスをオンにし、[千] を選択します。
[横軸のプロパティ] を開きます。[軸のオプション] ページで、次の手順を実行します。
[軸の種類] で、[スカラー (数値/日付)] を選択します。
[間隔] を 1 に変更します。
[ラベル] ページで、[自動調整を無効にする] を選択し、[ラベルの回転角度 (度)] を「45」に設定します。
[数値] ページで、[カテゴリ] を [日付] に、[種類] を [*1/31/2000] に設定します。
マトリックスを追加するには
折れ線グラフの下に、マトリックスを挿入します。
マトリックスの左端を、折れ線グラフの左端に揃えます。
EmployeeSalesYearOverYear データセットから、次の手順を実行します。
Year を [行] にドラッグします。
Sales を [データ] にドラッグします。テキスト ボックスの書式を [通貨] に設定します。
必要に応じて、ヘッダー行の書式を設定します。
マトリックスを選択します。プロパティ ペインで、[ブックマーク] を「MatrixwithNestedSparkline」に設定します。
必要に応じて、マトリックスのヘッダーの書式を設定します。
入れ子になったスパークラインを Tablix セルに追加するには
マトリックスの Sales 列を右クリックし、[列の挿入] をポイントして、[外側のグループ - 右] をクリックします。
列ハンドルをクリックしてドラッグすることにより、グラフの幅を拡張して右揃えにします。
2 行目の最終セルを右クリックし、[挿入] をポイントして、[スパークライン] をクリックします。次に、[ツールヒント] を使用して [マーカー付き折れ線] を追加します。
スパークライン グラフを構成するには、次の手順を実行します。
EmployeeSalesYearOverYear データセットから、Sales を [値] にドラッグします。
Month を [カテゴリ グループ] にドラッグします。
Month を右クリックして、[カテゴリ グループのプロパティ] ダイアログ ボックスを開きます。
[全般] ページの [グループの同期] で、Tablix1 を選択します。各スパークラインのカテゴリ軸では、各行のグループ データが別々に使用されるのではなく、マトリックス内のすべてのグループ データに基づいた、同一の最小値と最大値が使用されます。
[並べ替え] ページで、[並べ替え] を [MonthNumber] に設定します。
入れ子になったスパークラインの場合、スコープ内に系列グループが 1 つしか存在しないため、各線の色は既定の色パレットの最初の色に基づいて設定されます。
次の手順では、系列グループに割り当てられた色の順序をグループ式に基づいて制御するために、カスタム コードを追加します。この方法では、年ごとの線の色が、折れ線グラフとスパークライン グラフで同じになります。
折れ線グラフとスパークラインの線の色を合わせるには
[レポートのプロパティ] の [コード] ページで、レポートに次のカスタム コードを追加します。
Private colorPalette As String() = {"Blue", "Orange", "Green"} Private count As Integer = 0 Private mapping As New System.Collections.Hashtable() Public Function GetColor(ByVal groupingValue As String) As String If groupingValue = Nothing Then Return "Black" End If If mapping.ContainsKey(groupingValue) Then Return mapping(groupingValue) End If Dim c As String = colorPalette(count Mod colorPalette.Length) count = count + 1 mapping.Add(groupingValue, c) Return c End Function
この例では、3 年分のデータしかないため、3 色だけ定義されています。
折れ線グラフで、プロパティ ペインにグラフの系列が表示されるまで線を右クリックします。グラフの系列が表示されたら、[系列のプロパティ] をクリックします。
[塗りつぶし] ページの [色] で、次の式を入力します。
=IIF(Fields!Year.Value IS NOTHING,"Black",Code.GetColor(Fields!Year.Value))
スパークライン グラフに対して、手順 2. ~ 3. を繰り返します。
レポートをプレビューします。
年ごとの線の色が、折れ線グラフとスパークラインで同じになります。
四角形のコンテナーを追加するには
レポートの [本文] を右クリックし、[挿入] をポイントして、[四角形] をクリックします。
[四角形のプロパティ] で、[名前] を「rectCharts」に変更します。
四角形に、tbChartPurpose という名前のテキスト ボックスを追加し、「Compare seasonal sales by year」と入力します。
必要に応じて書式を設定します。
折れ線グラフを選択します。グラフの左上隅を四角形にドラッグします。四角形がグラフを含むように拡大されます。
四角形の下部のハンドルをクリックして下方向にドラッグします。四角形を選択するには、グラフをクリックし、プロパティ ペインのツール バーに選択したオブジェクトとして Rectangle1 が表示されるまで Esc キーを押します。
マトリックスの左上隅を四角形内のグラフの下にドラッグします。
グラフとマトリックスを四角形の中に配置します。
四角形のプロパティ ペインで、[ブックマーク] を「YearlySalesRectangle」に設定します。
切り替え付きのテキスト ボックスの下に四角形を移動します。
四角形をコンテナーとして使用すると、複数の関連レポート アイテムを簡単に配置できます。
テキストからブックマークへのリンクを追加するには
すべてのテキストが表示されるまで、テキスト ボックス tbScenario をクリックします。
"line" という単語を強調表示し、右クリックして [テキストのプロパティ] ダイアログ ボックスを開きます。
[フォント] ページで、[色] を [青] に設定し、[文字飾り] を [下線] に設定します。
[アクション] ページで、[ブックマークに移動する] をクリックします。
[ブックマークの選択] に「YearlySalesRectangle」と入力します。
単語 "sparkline" についても、手順 2. ~ 4. を繰り返します。
[ブックマークの選択] に「MatrixwithNestedSparkline」と入力します。
レポートをプレビューして確認するには
レポートをプレビューします。
次の点を確認します。
ラベル、折れ線グラフ、および入れ子になったスパークラインを使用したマトリックスについて、幅が同じであること、および四角形のコンテナー内で互いの位置が揃っていること。
折れ線グラフとスパークライン グラフの両方で同じデータが表示されていること。たとえば、2005 年の売上は年の後半にしか発生していません。
折れ線グラフとスパークラインの線の色で、年度別の売上データが 2005 年の場合は青、2006 年の場合はオレンジ、2007 年の場合は緑で示されていること。
シナリオ テキストを切り替えて、line をクリックすると、レポートが、折れ線グラフを含む四角形が記載されたページに移動すること。
レポートの最上部までスクロールして、シナリオ テキストで、sparkline をクリックすると、レポートが、入れ子になったスパークラインを含むマトリックスが記載されたページに移動すること。