Skip to content

Commit 10c2b66

Browse files
committed
ch 09 rewrite
1 parent cf35489 commit 10c2b66

1 file changed

Lines changed: 27 additions & 27 deletions

File tree

09-mapping-ja.Rmd

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -35,19 +35,19 @@ library(leaflet) # 動的地図
3535
library(ggplot2) # tidyverse データ可視化パッケージ
3636
```
3737

38-
- Section \@ref(spatial-ras) については、以下の二つのデータセットを読み込む必要がある
38+
- Section \@ref(spatial-ras) で紹介した二つのデータセットを読み込む必要がある
3939

4040
```{r 04-spatial-operations-1-1}
4141
nz_elev = rast(system.file("raster/nz_elev.tif", package = "spDataLarge"))
4242
```
4343

4444
## イントロダクション {#introduction-09}
4545

46-
地理学的研究の満足度と重要性は、その結果を伝えることにある
47-
地図作成は、コミュニケーションと細部への注意、そして創造力を必要とする古来の技術である。\index{ちずせいさく@地図作成}
46+
地理学的研究は、その結果を伝えることで満足度と重要性が高まる
47+
地図作成あるいは地図学は、コミュニケーションと細部への注意、そして創造力を必要とする古来の技術である。\index{ちずせいさく@地図作成}
4848
R における静的地図は、Section \@ref(basic-map) で見たように、`plot()` 関数を使えば簡単にできる。
4949
R の基本メソッドを使って高度な地図を作成することも可能ではある [@murrell_r_2016]
50-
しかし、この章の焦点は、専用の地図作成パッケージを使った地図作成にある
50+
しかし、この章の焦点は、地図作成専用のパッケージを使った地図作成にある
5151
新しいスキルを身につけるには、1 つの分野の知識を深めてから手を広げていくことが大切である。
5252
地図の作成も例外ではない。そのため、この章では多くのパッケージを表面的にではなく、1 つのパッケージ (**tmap**) を深く掘り下げて説明する。
5353

@@ -132,7 +132,7 @@ source("https://github.com/geocompx/geocompr/raw/main/code/09-tmshape.R", print.
132132
- `tm_raster()`: ラスタデータの色付きのセル (3レイヤのあるラスタには `tm_rgb()` もある)
133133
- `tm_text()`: (複合) 点、(複合) 線、(複合) ポリゴンのテキスト
134134

135-
Figure \@ref(fig:tmshape) の右側のパネルでは、塗りつぶし (fill) レイヤ<u>の上に</u>境界 (borders) を重ねた結果を示す
135+
Figure \@ref(fig:tmshape) の右側のパネルでは、塗りつぶし (fill) レイヤ<u>の上に</u>境界 (borders) を重ねた結果を示している
136136

137137
```{block2 qtm, type = 'rmdnote'}
138138
`qtm()` (**q**uick **t**hematic **m**aps) は、主題図を簡単に作成する関数である。
@@ -145,7 +145,7 @@ Figure \@ref(fig:tmshape) の右側のパネルでは、塗りつぶし (fill)
145145
### 地図オブジェクト {#map-obj}
146146

147147
**tmap** の便利な点は、地図を表す<u>オブジェクト</u>を格納できることである。
148-
以下のコードは、Figure \@ref(fig:tmshape) の最後のプロットをクラス `tmap` のオブジェクトとして保存することでこれを示している (`tm_fill() + tm_borders()` を単一の関数に凝縮した `tm_polygons()` の使用に注意してみよう)。
148+
以下のコードは、Figure \@ref(fig:tmshape) の最後のプロットをクラス `tmap` のオブジェクトとして保存することでこれを示している (`tm_polygons()` 関数は、`tm_fill() + tm_borders()` を単一の関数に凝縮したもの)。
149149

150150
```{r 08-mapping-4}
151151
map_nz = tm_shape(nz) + tm_polygons()
@@ -201,11 +201,11 @@ tmap_arrange(map_nz1, map_nz2, map_nz3)
201201
\index{ちずさくせい@地図作成!かしかのへんすう@可視化の変数}
202202
前節のプロットは、**tmap** のデフォルトの美観セッティングを示してきた。
203203
`tm_fill()``tm_symbols()` のレイヤには灰色の影を使用し、`tm_lines()` で作成した線を表現するために、連続した黒い線を使用する。
204-
もちろん、これらのデフォルト値やその他の美観はオーバーライドすることができる
205-
このセクションの目的は、その方法を示すことである
204+
もちろん、これらのデフォルト値やその他の美観は上書きすることができる
205+
このセクションでは、その方法を示していく
206206

207207
地図の美観には、大きく分けて「データによって変化するもの」と「一定であるもの」がある。
208-
ヘルパー関数 `aes()` を使って変数の美観を表現する **ggplot2** とは異なり、 **tmap** はレイヤの種別に応じた美観の引数を直接受け付ける。
208+
**ggplot2** ではヘルパー関数 `aes()` を使って変数の美観を表現するが、**tmap** はレイヤの種別に応じた美観の引数を直接受け付ける。
209209

210210
- `fill`: ポリゴンの塗りつぶし色
211211
- `col`: ポリゴン境界線、線、点、ラスタの色
@@ -233,16 +233,16 @@ tmap_arrange(ma1, ma2, ma3, ma4, ma5, ma6)
233233
```
234234

235235
Base R のプロットと同様に、美観を定義する引数もまた、様々な値を受け取ることができる。
236-
以下の Base R コード (Figure \@ref(fig:tmcol) の左のパネルを生成) とは異なり、**tmap** 美観引数は数値ベクタを受け付けない
236+
ただし、Base R コード (Figure \@ref(fig:tmcol) の左のパネルを生成) とは異なり、**tmap** 美観引数は数値ベクトルを受け付けない
237237

238238
```{r 08-mapping-9, eval=FALSE}
239239
plot(st_geometry(nz), col = nz$Land_area) # 成功
240240
tm_shape(nz) + tm_fill(fill = nz$Land_area) # 失敗
241241
#> Error: palette should be a character value
242242
```
243243

244-
代わりに、`fill` (および、ラインレイヤのための `lwd`ポイントレイヤのための `size` など、異なることがある他の美観) は、プロットされるジオメトリに関連する属性を指定する文字列を必要とする
245-
したがって、次のように望ましい結果を得ることができる (Figure \@ref(fig:tmcol) 右図)。
244+
`fill` (線レイヤの場合は `lwd`点レイヤの場合は `size` など) は、プロットされるジオメトリに関連する属性を、数値ベクトルではなく文字列を渡す必要がある
245+
次のようにすると望ましい結果を得ることができる (Figure \@ref(fig:tmcol) 右図)。
246246

247247
```{r 08-mapping-10, fig.show='hide', message=FALSE}
248248
tm_shape(nz) + tm_fill(fill = "Land_area")
@@ -256,7 +256,7 @@ tm_shape(nz) + tm_fill(fill = "Land_area")
256256
視覚化の変数には、`.scale``.legend``.free` という文字列を後ろにつけた 3 つの追加引数がある。
257257
例えば、`tm_fill()` には `fill``fill.scale``fill.legend``fill.free` といった引数がある。
258258
`.scale` 引数は、地図と凡例での表示方法を指定し (Section \@ref(scales))、`.legend` はタイトル、方向、位置を指定する (Section \@ref(legends))。
259-
`.free` 引数は、多くのファセットをもつ地図で、ファセットによって縮尺や凡例が変わる場合などに使用する
259+
`.free` 引数は、多くのファセットをもつ地図で、ファセットによってスケールや凡例が変わる場合などに使用する
260260

261261
### スケール (scale) {#scales}
262262

@@ -295,7 +295,7 @@ source("https://github.com/geocompx/geocompr/raw/main/code/09-tmpal.R", print.ev
295295
```
296296

297297
\index{tmap (package)!break}
298-
`tm_scale_` から始まる関数ファミリーを使うことで縮尺をカスタマイズすることもできる
298+
`tm_scale_` から始まる関数ファミリーでスケールをカスタマイズすることもできる
299299
最も重要なものは、`tm_scale_intervals()``tm_scale_continuous()``tm_scale_categorical()` である。
300300

301301
```{r}
@@ -364,7 +364,7 @@ tmap_arrange(m_cont1, m_cat1)
364364
```
365365

366366
\index{いろぱれっと@色パレット}
367-
色パレット\index{ちずさくせい@地図作成!いろぱれっと@色パレット}は大きく分けて、カテゴリ、連続、発散の三種類ある (Figure \@ref(fig:colpal))。目的に応じてこの三種類を使い分ける。^[
367+
色パレット\index{ちずさくせい@地図作成!いろぱれっと@色パレット}は大きく分けて、カテゴリ、連続、発散 (分岐) の三種類がある (Figure \@ref(fig:colpal))。目的に応じてこの三種類を使い分ける。^[
368368
第四の色パレットとして二変量 (bivariate) がある。
369369
これは、地図上の二つの変数の関係を代表する。
370370
]
@@ -422,7 +422,7 @@ many_palette_plotter(c(all_default_pals$div, all_default_pals$seq, all_default_p
422422
また、情報を効果的に伝えるために、色パレットは分かりやすいものが望ましい。
423423
どの数値が低く、どの数値が高いかが明確で、色も徐々に変化することが望ましい。
424424
第二に、色の変化は、多くの人がアクセスできるものでなければならない。
425-
そのため、色弱者用のパレットをできるだけ多く使うことが大切である。^[`cols4all::c4a_gui()` の "Color Blind Friendliness" パネルの "Color vision" オプションを参照。]
425+
そのため、可能な限り色弱者用のパレットを使うことが大切である。^[`cols4all::c4a_gui()` の "Color Blind Friendliness" パネルの "Color vision" オプションを参照。]
426426

427427
### 凡例 {#legends}
428428

@@ -505,12 +505,12 @@ map_nz + tm_layout(frame = FALSE)
505505
source("code/09-layout1.R", print.eval = TRUE)
506506
```
507507

508-
`tm_layout()` の他の引数は、地図が配置されるキャンバスとの関係で、地図の多くの側面を制御する
508+
`tm_layout()` の引数は、キャンバス内で地図がどのように配置されるかを制御する
509509
ここでは、便利なレイアウト設定をご紹介する (一部、Figure \@ref(fig:layout2))。
510510

511511
- `inner.margin``outer.margin` はマージンを設定
512-
- `fontface` で制御されるフォント設定と `fontfamily`
513-
- 凡例設定には`legend.show` (凡例を表示すかどうか)、`legend.only` (地図を省略するか)、`legend.outside` (凡例を地図の外に出すか) などの二値オプションや、`legend.position` ですべて設定
512+
- `fontface` で制御されるフォント設定と `fontfamily` (訳註: macOS では文字化けを fontfamily = "HiraginoSans-W3" とすることで回避できる)
513+
- 凡例設定は`legend.show` (凡例を表示すかどうか)、`legend.only` (地図を省略するか)、`legend.outside` (凡例を地図の外に出すか) などの二値オプションで設定するか、あるいは `legend.position` ですべて設定
514514
- 図郭の幅 (`frame.lwd`) と二重線 (`frame.double.line`) を許可するオプション
515515
- `sepia.intensity` (地図のセピア度合) と `saturation` (色・グレースケール) を制御する色設定
516516

@@ -522,9 +522,9 @@ source("code/09-layout2.R", print.eval = TRUE)
522522

523523
\index{ちずさくせい@地図作成!ふぁせっとちず@ファセット地図}
524524
\index{tmap (package)!ふぁせっとちず@ファセット地図}
525-
ファセット地図は「スモール・マルチプル」とも呼ばれ、多数の地図を横に並べ、時には縦に重ねて構成する [@meulemans_small_2017]
525+
ファセット地図は「スモール・マルチプル」とも呼ばれ、多数の地図を横または縦に重ねて構成する [@meulemans_small_2017]
526526
ファセットは、空間的な関係が時間などの別の変数に対してどのように変化するかを視覚化することができる。
527-
例えば、集落の人口の変化を、各パネルが特定の時点の人口を表すファセット地図で表現することができる
527+
例えば、集落の人口の変化を表現する場合、特定の時点の人口のパネルを並べたファセット地図で表現することができる
528528
時間の次元は、色などの別の<u>視覚化に関する変数</u>で表現できる。
529529
しかし、これは複数のポイントが重なるため、地図が乱雑になる危険性がある (都市は移動しない!)。
530530

@@ -727,9 +727,9 @@ urb_anim = tm_shape(world) + tm_polygons() +
727727
tmap_animation(urb_anim, filename = "urb_anim.gif", delay = 25)
728728
```
729729

730-
地図アニメーションの威力を示すもう一つの例が、Figure \@ref(fig:animus) にある
730+
地図アニメーションの威力を示すもう一つの例が、Figure \@ref(fig:animus) である
731731
これは、アメリカにおける州の発達を示すもので、最初は東部で形成され、その後徐々に西部へ、最後は内陸部へと発展していった。
732-
この地図を再現するためのコードは、本書の GitHub リポジトリのスクリプト `code/09-usboundaries.R` に記載されている
732+
この地図を再現するためのコードは、本書の GitHub リポジトリのスクリプト `code/09-usboundaries.R` にある
733733

734734
```{r 08-mapping-24, echo=FALSE, eval=FALSE}
735735
source("https://github.com/geocompx/geocompr/raw/main/code/09-usboundaries.R")
@@ -826,7 +826,7 @@ knitr::include_graphics("images/mapview.png")
826826
データセットを複数のレイヤに「バースト」する機能や、`+` の後に地理的オブジェクトの名前を付けて複数のレイヤを追加する機能など、高度な制御を提供する。
827827
さらに、属性の自動的な色付けも可能である (引数 `zcol`)。
828828
要するに、データドリブンの **leaflet** API\index{API} と考えることができる (**leaflet** については後述する)。
829-
**mapview** は常に空間オブジェクト (`sf``SpatRaster`) を最初の引数として期待することから、パイプ式の末尾でうまく機能する
829+
**mapview** は常に空間オブジェクト (`sf``SpatRaster`) を最初の引数として期待することから、パイプで繋げてもうまく機能する
830830
次の例では、**sf** を使って直線とポリゴンを交差させ、**mapview** (Figure \@ref(fig:mapview2)) で可視化する場合を考えてみよう。
831831

832832
```{r 08-mapping-30, eval=FALSE}
@@ -1131,16 +1131,16 @@ map_gpkg_df$Title[map_gpkg_df$Package == "leaflet"] =
11311131
knitr::kable(map_gpkg_df,
11321132
caption = "汎用の地図作成パッケージ",
11331133
caption.short = "Selected general-purpose mapping packages.",
1134-
booktabs = TRUE) |>
1135-
kableExtra::column_spec(2, width = "9cm")
1134+
booktabs = TRUE) # |>
1135+
# kableExtra::column_spec(2, width = "9cm")
11361136
```
11371137

11381138
Table \@ref(tab:map-gpkg) は、さまざまな地図作成パッケージが利用可能であることを示しており、この表に記載されていないものも多数ある。
11391139
特に注目すべきは **mapsf** で、コロプレス図、比例シンボル地図、フロー地図など、さまざまな地理的視覚化を生成することができる。
11401140
これらは、[`mapsf`](https://cran.r-project.org/package=mapsf/vignettes/mapsf.html)\index{mapsf (package)} vignette に記載されている。
11411141

11421142
Table \@ref(tab:map-spkg) に示すように、いくつかのパッケージは、特定の地図タイプに焦点を当てている。
1143-
地理空間を歪めたカルトグラムの作成、ラインマップの作成、ポリゴンの正六角形グリッドへの変換、複雑なデータを地理的トポロジーを表すグリッド上に可視化し、3次元表現をするパッケージである
1143+
地理空間を歪めたカルトグラムの作成、ラインマップの作成、ポリゴンの正六角形グリッドへの変換、複雑なデータを地理的トポロジーを表すグリッド上に可視化し、3 次元表現をするパッケージである
11441144

11451145
```{r map-spkg, echo=FALSE, message=FALSE}
11461146

0 commit comments

Comments
 (0)