2013年3月13日水曜日

◆マップ作製の基本操作

この Step で行う作業

この Step では、マップ ウィザードによる Bing マップと連携したマップ作成や、マップを構成する各要素(マップ ポイント、カラー スケール、凡例、距離スケール、マップ ビュー、ポイント カラー ルール、ラベル、ツールチップ など)の設定/調整、Bing マップの種類の変更方法などを説明します。

image

maptest データベースの作成

まずは、地図データのもととなるデータベースとテーブルを作成します。Management Studio を起動して、サンプル スクリプト内の「step5_CreateTable.txt」ファイルから SQL をコピーして貼り付けて、実行します

image

これにより、「maptest」データベースが作成され、その中へ「県別人口データ」テーブルが作成されます。このテーブルには、47都道府県分の人口データと、県庁所在地の経度と緯度を格納しています。人口データは、総務省の以下の報道資料を利用しています。
住民基本台帳に基づく人口・人口動態及び世帯数 (スクリプト内のデータは、平成20年3月31日時点のものを利用) http://www.soumu.go.jp/menu_news/s-news/01gyosei02_02000042.html
県庁所在地の緯度・経度は、「空間結果」タブでグラフィカルに確認することもできます。

image

マップ ウィザードでマップを作成する
マップ ウィザードでマップを作成する

マップは、「マップ ウィザード」を利用することで簡単に作成することができます。ここでは、マップ ウィザードを利用して、次のような「関東地方の県別人口マップ」を表示するレポートを作成してみましょう(人口データは、前の Step で作成した県別人口テーブルから取得します)。
image

マップ ウィザードの開始
  1. レポート ビルダーを起動します
  2. [作業の開始]ページでは、[新しいレポート]の[マップ ウィザード]をクリックします
    image
  3. 次の[空間データのソースを選択]ページでは、[SQL Server 空間クエリ]を選択して、[次へ]ボタンをクリックします。
    image
  4. 次の[SQL Server 空間データを含むデータセットの選択]ページでは、マップの元となるデータセットを作成するために[SQL Server 空間データを含む新しいデータセットの追加]を選択して、[次へ]ボタンをクリックします。
    image
  5. 次の[SQL Server 空間データ ソースへの接続の選択]ページでは、マップの元となるデータ ソースを作成するために[新規]ボタンをクリックします。
    image
  6. [データ ソースのプロパティ]ダイアログが表示されたら、[ビルド]ボタンをクリックします。
    image
  7. [接続のプロパティ]ダイアログが表示されたら、[サーバー名]へ SQL Server の名前、[データベースの選択または入力]で「maptest」データベースを選択して、[OK]ボタンをクリックします。
    image
    [データ ソースのプロパティ]ダイアログへ戻ったら、[OK]ボタンをクリックします。
  8. 次のように、[SQL Server 空間データソースへの接続の選択]ページへ戻ったら、作成したデータソースが選択されていることを確認して、[次へ]ボタンをクリックします。
    image
  9. 次の[クエリのデザイン]ページでは、マップの元となるテーブル/列を選択します。次のように[テーブル]フォルダーを展開して、「県別人口データ」テーブルのすべての列を選択します(テーブルにチェックをつけると、すべての列が選択されます)。
    image
    続いて、[フィルターの追加]ボタンをクリックして、[フィールド名]で「地域」を選択し、[値]へ「関東」と入力します。
  10. 次に、[テキストとして編集]ボタンをクリックします。
    image
    SELECT ステートメントが自動生成されていることを確認し、ツール バーの[!](実行)ボタンをクリックして、結果を確認しておきます。「県別人口データ」テーブルには、都道府県ごとの人口データと、県庁所在地の経度と緯度が Spatial データ型で格納されています。データが関東地方に絞り込まれていることを確認したら、[次へ]ボタンをクリックします。
  11. 次の[空間データとマップ ビューのオプションを選択]ページでは、地図と連携するデータ(Spatial データ型の列)を指定します。今回は、[空間フィールド]で「geog」列が選択されて、[レイヤーの種類]が「ポイント」になっていることを確認します。
    image
    さらに、[Bing Maps のレイヤーを追加する]をチェックします。
    image
    これにより、背景に Bing マップ(旧 Virtual Earth)が表示され、geog 列の県庁所在地のポイントと重なります。地図をズームしたり、位置の調整を行って、関東地方の全県が表示されるように調整して、[次へ]ボタンをクリックします。
    --
    残念ながら私の環境ではこれは動作しなかった。(Expectation Failedで要求が失敗しました。)
    会社のファイアウォールのせいなのか?
    image
  12. 次の[マップの視覚エフェクトを選択]ページでは、「バブル マップ」を選択して、[次へ]ボタンをクリックします。
    image
  13. 次の[分析データセットの選択]ページでは、バブル表示の元となるデータセットを指定します。今回は、前の手順で作成した人口データを含むデータセット(DataSet1)が選択されていることを確認して、[次へ]ボタンをクリックします。
    image
  14. 次の[配色テーマとデータの視覚エフェクトを選択]ページでは、[テーマ]で任意のテーマを選択します。
    image
    [バブルのサイズを使用してデータを表示する]を選択して、[データ フィールド]でバブルのサイズの元となるフィールドとして「[Sum(人口)]」を選択します。これで、県の人口に応じてバブルのサイズを変えることができます。
    以上でウィザードが完了です。
  15. 「デザイン」画面上にウィザードによって生成されたマップが作成されていることを確認できます。リボンの[実行]ボタンをクリックして、実行結果を確認しておきましょう。
    image
    既定では、バブルの色が白で表示されて、透明度が 40%へ設定されているので、結果が分かりづらくなっています。以降の手順では、これを見やすく変更していきます。
マップ ポイントの色と透明度の変更
マップ ポイントの色の設定

マップ ポイント(バブル)は、次のように任意の色を設定して、見栄えを良くすることができます。
image

ポイントに色を設定するには、マップをクリックして[マップ レイヤー]を表示します。
image

[マップ レイヤー]では、[PointLayer1]の[▼]ボタンをクリックして、[ポイントのプロパティ]をクリックします。
これにより、次のように[マップのポイントのプロパティ]ダイアログが表示されるので、[塗りつぶし]ページを開きます。
image
このページでは、グラデーションや色の設定を行うことができます。
また、[罫線]ページでは、ポイントの線のスタイルや色を変更することができます。

透明度の変更

マップのポイントは、デフォルトで 40% の透明度が設定されています。
image

透明度を変更して、ポイントが透けないようにするには、[マップ レイヤー]で[PointLayer1]をクリックして、ツールバーの[プロパティ]ボタンをクリックします。
image
「プロパティ」ダイアログが表示されたら、[透明度]プロパティを設定することで、透明度を変更することができます(透明にしない場合は、「0」%へ設定します)。
image

カラー スケールの非表示
カラー スケールの非表示

今回のマップでは、カラー スケール(ポイントの色を、値に応じて変更する機能)を使用していないので、これを非表示にすることもできます。

image

カラー スケールを非表示にするには、次のようにカラー スケールを右クリックして、[カラー スケールの表示]をクリックし、チェックを外します。

image

これで、カラー スケールがマップから表示されなくなります。

凡例のタイトルの設定と位置の変更

マップの凡例には、タイトルを設定することができます。また、位置も変更することができます。

image

凡例にタイトルを設定するには、凡例の「タイトル」を選択してクリックし、任意の文字に置換えます。

image

凡例の位置を変更するには、凡例を右クリックして、[凡例のプロパティ]をクリックします。

image

[マップの凡例のプロパティ]ダイアログでは、[位置]で配置したい位置を指定します。また、[ビュー ポートの外に凡例を表示する]のチェックを外すと、マップの内側に凡例を配置することができるようになります。

マップのタイトルの設定

マップでは、タイトルを設定することができます。

image

マップのタイトルを設定するには、マップの「マップのタイトル」を選択してクリックし、任意の文字へ変更します。

image

距離スケールの非表示

今回のマップでは、距離スケールは必要ないので、これを非表示にすることもできます。

image

距離スケールを非表示にするには、距離スケールを右クリックして、[距離スケールの表示]をクリックし、チェックを外します。

image

これで距離スケールがマップから表示されなくなります。

image

マップ ビューと拡大/縮小の調整

表示している地図の位置(マップ ビュー)や拡大/縮小は、調整することができます。地図の位置を調整するには、[マップ レイヤー]の[マップ ビュー]にある矢印(「↑」「↓」「←」「→」)ボタンを利用します(「↑」矢印をクリックすれば上に移動、「→」矢印をクリックすれば右に移動することができます)。

image

地図の拡大/縮小を調整したい場合には、「-」(縮小)または「+」(拡大)ボタンを利用します。

マップ ポイントにツール ヒントを設定する

マップ ポイントには、ツール ヒントを設定して、マウスをオーバーした際に値を表示させることもできます。

image

ツール ヒントを設定するには、次のようにマップをクリックして、[マップ レイヤー]を表示し、[PointLayer1]の「▼」ボタンをクリックして、[ポイントのプロパティ]をクリックします。

image

[マップのポイントのプロパティ]ダイアログでは、次のように[ツール ヒント]へ表示したい値のフィールドを設定します。

image

ツール ヒントへ人口を3桁のカンマ区切りで表示する場合は、[fx](式)ボタンをクリックして、式を次のように入力します(式については Step 13 で説明します)。
=Format(Fields!人口.Value, "n0")
Fields!人口.Value(人口データ)に対して、Format 関数を利用して「n0」書式(小数点以下が 0 桁の数値形式)を指定しています。これで、マップ ポイントのツール ヒントに各県の人口を3桁のカンマ区切りで表示できるようになります。

ポイント マーカーの形を変更する
ポイント マーカーの形を変更する

マップ ポイントは、マーカーの形を変更して、見栄えをよくすることもできます。

image

ポイント マーカーを変更するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのプロパティ]をクリックします。

image

[マップのポイントのプロパティ]ダイアログでは、[マーカーの種類]から任意のマーカー タイプを選択します(既定値は円)。五角形へ変更したい場合は五角形を選択)。

Note:画像をマーカーへ設定する
ポイント マーカーには、次のように任意の画像を設定することもできます。
image
任意の画像を利用するには、[マップのポイントのプロパティ]ダイアログの[マーカーの種類]で「画像」を選択して、[次の画像を使用]の[インポート]ボタンをクリックし、画像ファイルを追加します(既に画像フォルダーに登録している画像の場合は、直接選択できます)。
image

ポイントのサイズを変更する
ポイントのサイズを変更する

ポイント マーカーのサイズは、変更することができます。次の画面は、終了サイズを 30pt(既定値)から 40pt へ変更した場合の例です。

image

ポイント マーカーのサイズを変更するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのサイズのルール]をクリックします。

image

[マップのレイヤー サイズのルールのプロパティ]ダイアログでは、[開始サイズ]と[終了サイズ]を任意の値へ指定することで、ポイント マーカーのサイズを変更することができます(ここでは、終了サイズを 30pt から 40pt へ変更しています)。

ディストリビューション設定の変更

[マップのレイヤー サイズのルールのプロパティ]ダイアログでは、[ディストリビューション]ページで、ポイントのサイズを分ける範囲や、開始値などを変更することができます。次の画面は、開始値を 0 へ変更した場合の例です。

image

開始値を変更するには、次のように「範囲の開始」を設定します。

image

ポイント カラー ルールを設定する
ポイント カラー ルールを設定する

マップ ポイントは、ポイント カラー ルールを設定して、値に応じて異なる色で表示させるようにすることもできます。

image

ポイントにカラー ルールを設定するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントの色のルール]をクリックします。

image

[マップの色のルールのプロパティ]ダイアログでは、次のように[色パレットを使用してデータを表示する]をチェックして、[データ フィールド]で色を区分けするためのデータ フィールドを選択します。

image

ここでは、[データ フィールド]に「[Sum(人口)]」を選択して、人口数で色分けするようにします。[パレット]では、色のセットである任意のカラー パレットを選択することができます。
また、[ディストリビューション]ページで、[範囲の開始]を「0」へ変更して、範囲が 0 から開始されるようにします。

image

設定したカラー パレットの効果を確認しやすくするには、前の手順でマップ ポイントにグラデーションを設定している場合は、次のように[マップのポイントのプロパティ]ダイアログを開いて、[塗りつぶしのスタイル]を「純色」、[色]を「色なし」へ設定します。

image

また、次のように[罫線]ページで、[線の色]も「灰色」などへ設定しておきます。

image

以上によって、実行結果は、次のようになります。

image

パレットで「明るいパステル」を選択している場合は、ポイントの色が「紺」や「赤」、「オレンジ」などで色分けされるようになったことを確認できます。ただ、凡例については、サイズの凡例とカラーの凡例の 2つが追加されてしまっているので、これを次のようにサイズの凡例を削除した形へ変更してみます。

image

ポイント サイズの凡例を削除する

ポイント サイズの凡例を削除するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのサイズのルール]をクリックします。

image

[マップのレイヤー サイズのルールのプロパティ]ダイアログでは、[凡例]ページを開いて、[この凡例に表示]を空(何も選択していない状態)へ設定します。これで、ポイント サイズの凡例を削除できるようになります。

カラー パレットの種類

ポイント カラー ルール(ポイントの色分け)で指定できるカラー パレットには、次の4種類があります。

image

また、これらのパレット以外にも、任意の色を指定できるカスタム パレットを利用することもできます。これについては後述します。

ポイントのサイズを統一する

ポイント カラー ルールを設定した場合は、ポイントのサイズを統一したい場合があります。

image

ポイントのサイズを統一するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのサイズのルール]をクリックします。

image

[マップのレイヤー サイズのルールのプロパティ]ダイアログでは、次のように[既定のマーカー サイズを使用する]を選択して、[サイズ]へ表示したい任意のポイント サイズを指定します。

image

カスタム カラーを指定する

ポイント カラー ルールには、前述したカラー パレット以外にも、カスタム カラー(任意の色)を指定することもできます。

image

ポイント ルールにカスタム カラーを指定するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントの色のルール]をクリックします。

image

[ポイントの色のルール]ダイアログでは、[作成した色を使用してデータを表示する]を選択して、[追加]ボタンをクリックして、任意の色を追加していきます。
上の結果例は、次の 4つの色を追加したものです。

image

カラー範囲を設定する
カラー範囲を設定する

ポイント カラー ルールでは、カラー範囲を設定してグラデーション カラーを設定することもできます。

image

カラー範囲を設定するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントの色のルール]をクリックします。

image

[マップの色のルールのプロパティ]ダイアログでは、[色の範囲を使用してデータを表示する]を選択して、[最初の色](スタート カラー)と[中間の色](中間カラー)、[最後の色](終了カラー)でそれぞれ任意の色を選択します。

カラー スケールの表示

前の手順では、カラー スケールを非表示へ設定しましたが、この手順のようにカラー範囲を利用している場合は、カラー スケールがあったほうが見やすくなります。
カラー スケールを表示するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[マップ]の[カラー スケールの表示]をクリックします。

image

ラベルを設定する
ラベルを設定する

マップ ポイントには、ラベルを設定して表示することができます。

image

マップ ポイントにラベルを表示するには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのプロパティ]をクリックします。

image

[マップのポイントのプロパティ]ダイアログでは、[ラベルの文字]の[fx]ボタンをクリックして、[式]ダイアログを表示し、式を次のように入力します。
=Format(Fields!人口.Value, "n0")

image

これで、各県の人口を 3桁のカンマ区切りでラベルに表示できるようになります。
[配置]では、ラベルの表示位置を指定することもできます。

image

[フォント]ページでは、ラベルの文字の色やフォント、サイズなどを設定することができます。

image

背景の地図に透明度を設定する

image

背景の地図に透明度を設定するには、次のように[マップ レイヤー]で[TileLayer1]の「▼」ボタンをクリックして、[タイトルのプロパティ]をクリックします。

image

[マップのタイル レイヤーのプロパティ]ダイアログでは、[表示]ページを開いて、[透明度]を設定します。

ツール ヒントを変更して見栄えを良くする

マップ ポイントのツール ヒントには、複数のフィールドの値を表示させることもできます。

image

マップ ポイントのツール ヒントに複数のフィールドの値を表示させるようにするには、[マップ レイヤー]で[PointLayer1]の「▼」ボタンをクリックして、[ポイントのプロパティ]をクリックします。

image

[マップのポイントのプロパティ]ダイアログでは、[ツール ヒント]の[fx]ボタンをクリックして[式]ダイアログを表示し、式を次のように入力します。
="男性 " & Format(Fields!男性人口.Value, "n0") & vbCrLf & "女性 " & Format(Fields!女性人口.Value, "n0")
image

Reporting Services では、Visual Basic と同じように、& で文字列連結、vbCrLf で改行を追加できるので、これで男性の人口を 1行目、女性の人口を 2行目に表示できるようになります。& や vbCrLf など、式で利用できる演算子やキーワードについては、Step 13 で説明します。

Bing マップの種類を変更する
Bing マップの種類を変更する

背景として利用している Bing マップは、種類を変更することもできます。既定値は「道路」ですが、次のように「航空写真」へ変更したりすることができます。

image

Bing マップの種類を変更するには、[マップ レイヤー]で[TileLayer1]の「▼」ボタンをクリックして、[タイトルのプロパティ]をクリックします。

image

[マップのタイル レイヤーのプロパティ]ダイアログでは、[種類]で Bing マップの種類を変更することができます。

Bing マップの種類

Bing マップの種類には、次の 3つがあります。

image

0 件のコメント:

コメントを投稿