0
人口が時間とともにどのように進化したかを表すマップ(または、より良い一連のマップ)を作成したいと思います。tmapを使用してワイドdfから時系列のマップを作成する方法
わかりやすくするために、私はのサンプルデータに組み込まれたtmap
を使用します。
library(tmap)
data("World", "metro")
> str([email protected])
'data.frame': 436 obs. of 12 variables:
$ name : chr "Kabul" "Algiers" "Luanda" "Buenos Aires" ...
$ name_long: chr "Kabul" "El Djazair (Algiers)" "Luanda" "Buenos Aires" ...
$ iso_a3 : chr "AFG" "DZA" "AGO" "ARG" ...
$ pop1950 : num 170784 516450 138413 5097612 429249 ...
$ pop1960 : num 285352 871636 219427 6597634 605309 ...
$ pop1970 : num 471891 1281127 459225 8104621 809794 ...
$ pop1980 : num 977824 1621442 771349 9422362 1009521 ...
$ pop1990 : num 1549320 1797068 1390240 10513284 1200168 ...
$ pop2000 : num 2401109 2140577 2591388 12406780 1347561 ...
$ pop2010 : num 3722320 2432023 4508434 14245871 1459268 ...
$ pop2020 : num 5721697 2835218 6836849 15894307 1562509 ...
$ pop2030 : num 8279607 3404575 10428756 16956491 1718192 ...
>
データからわかるように、データは、独自の値のセットを持つ複数の変数(1年に1つ)が存在するワイドフォーマットで構造化されています。 、
データがめちゃめちゃにされた見ることができるように:
tm_shape(World) +
tm_polygons() +
tm_shape(metro) +
tm_dots(c("pop2010", "pop2020"), col = c("pop2010", "pop2020"),
size = c("pop2010", "pop2020"), border.col = "black")
そして、それは出力です:私はTMAPの面取りを使用し、各列の名前を含むベクトルを作成し、そのようにすることができます知っています私は各ファセットが(サイズと色で)毎年の人口のみを表示したいと思っていましたが、どこから形が来るのか分かりません。
私が間違っていることを教えてください。
ありがとうございます!私は、この例が同じ値に対して色とサイズを持つことにはあまり意味がないことに同意しますが、私は実際のシナリオでそれを行います。あなたの答えのおかげで、私の問題は最初のベクトルであることに気付きました。よろしくご協力ください – ccamara
サービスの喜んで! –