複数の図形グラフで色を統一する方法 (レポート ビルダー 3.0 および SSRS)
図形以外のグラフの場合、グラフの系列のインデックスに基づいてパレットから新しい色が選択されます。たとえば、グラフの最初の系列は、パレット内の最初の色にマップされます。しかし、この動作は図形グラフでは異なります。図形グラフの場合、パレットの各色は、データセット内のデータ ポイントにマップされます。たとえば、データ ポイント 1 はパレットの最初の色にマップされ、データ ポイント 2 は 2 番目の色にマップされます。
値がないデータ ポイントは、図形グラフに表示されません。したがって、そのデータ ポイントへの色のマッピングはスキップされます。たとえば、ポイント 2 の値が 0 の場合、ポイント 1 にパレットの最初の色がマップされ、ポイント 3 にパレットの 2 番目の色がマップされます。空のポイントを描画する必要がない場合、円グラフのデータセットの空のポイントにパレット色を使用する必要はないので、この方法は便利です。
その弊害として、1 つのレポートに複数の円グラフを表示する場合、同じカテゴリ グループのデータ ポイントが異なる色で表示されることがあります。この問題を解決するには、個々のデータ値ではなく、カテゴリ グループにマップするように個々の色を定義する必要があります。この方法は、図形グラフがテーブルまたはマトリックスのスパークラインであるか、レポート自体の図形グラフであるかによって異なります。
凡例は系列に接続されるので、系列に指定した色が自動的に凡例に表示されます。
注 |
---|
レポート定義 (.rdl) は、Business Intelligence Development Studio のレポート ビルダー 3.0 およびレポート デザイナーで作成および変更できます。これらの作成環境では、レポートおよび関連アイテムの作成方法、開く方法、および保存方法が異なります。詳細については、microsoft.com Web サイトの「レポート デザイナーとレポート ビルダー 3.0 でのレポートのデザイン (SSRS)」を参照してください。 |
テーブルまたはマトリックス内の複数のスパークライン図形グラフで色を統一するには
グラフをクリックして、グラフ データ ペインを表示します。
[カテゴリ グループ] 領域内のカテゴリを右クリックし、[カテゴリ グループのプロパティ] をクリックします。
[全般] タブの [グループの同期] ボックスで、色を同期させるカテゴリの名前をクリックし、[OK] をクリックします。
複数の図形グラフで色を統一するには
レポート本文の外側を右クリックし、[レポートのプロパティ] を選択します。
[コード] のテキスト ボックスに次のコードを入力します。
Private colorPalette As String() = {"Color1", "Color2", "Color3"} Private count As Integer = 0 Private mapping As New System.Collections.Hashtable() Public Function GetColor(ByVal groupingValue As String) As String 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
注 "Color1" という文字列を目的の色で置き換える必要があります。"Red" などの名前付きの色を使用することも、"#FFFFFF" (黒) などの色を表す 6 桁の 16 進数値を使用することもできます。3 色以上定義する場合、配列内の色の数が図形グラフのポイントの数に一致するように色の配列を拡張する必要があります。名前付きの色または色の 16 進数表現を含む文字列値のコンマ区切りリストを指定して、配列に新しい色を追加できます。
[OK] をクリックします。
図形グラフ上を右クリックし、[系列のプロパティ] を選択します。
[塗りつぶし] の式 ([fx]) ボタンをクリックして、Color プロパティの式を編集します。
次の式を入力します。ここで、"MyCategoryField" は、[カテゴリ グループ] 領域に表示されるフィールドです。
=Code.GetColor(Fields!MyCategoryField)
関連項目