オーストラリア統計局から入手した、オーストラリアの遠隔地を示すシェープファイルがあります。
http://www.abs.gov.au/AUSSTATS/abs@.nsf/DetailsPage/1270.0.55.005July%202011?OpenDocument
同じURLにPDF「ASGSRemotenessStructureEdition2011PDFMaps」があります-このPDFドキュメントから最初のマップを再現しようとしています。
シェープファイルを読み込み、data
スロットに色情報を追加しました。
ra <- readShapeSpatial("RA_2011_AUST", delete_null_obj = TRUE)
ra@data$COLOUR <- "#FFFFFF"
ra@data$COLOUR[(as.numeric(as.character(ra@data$RA_CODE11)) %% 10) == 0] <- "#006837"
ra@data$COLOUR[(as.numeric(as.character(ra@data$RA_CODE11)) %% 10) == 1] <- "#31A354"
ra@data$COLOUR[(as.numeric(as.character(ra@data$RA_CODE11)) %% 10) == 2] <- "#78C679"
ra@data$COLOUR[(as.numeric(as.character(ra@data$RA_CODE11)) %% 10) == 3] <- "#C2E699"
ra@data$COLOUR[(as.numeric(as.character(ra@data$RA_CODE11)) %% 10) == 4] <- "#FFFFCC"
私に残された唯一のことは、地図をプロットすることです!これは私が立ち往生しているところです...
ra@polygons
は35のポリゴンのリストであり、各ポリゴンにID
はデータフレームへのインデックスであるスロットがありますra@data
。だから私がしなければならないのはplot()
、で色を見つけるように言うことra@data$COLOUR[ID]
です。まあ、完全ではありません。35個のポリゴン(クラス「ポリゴン」)のそれぞれに、独自のポリゴンのリスト(クラス「ポリゴン」)があります。合計で6902個のポリゴンがあります!!!
私の理解でplot()
は、ポリゴンがプロットされるのと同じ順序で色のベクトルを渡す必要があります。したがって、各要素が関連するポリゴンのカラー値を保持する長さ6902のベクトルを作成する必要があると思います。私はこれまでどのようにやっていますか?
ポリゴンを順番にプロットすれば簡単ですが、そうではありません。plotOrder
35個のポリゴンのそれぞれに整数ベクトルであるスロットがあるため、おそらく、色ベクトルはこれらの各ベクトルの値で並べ替える必要があります。
この時点で、これはすべて少し複雑すぎるようです。私はここで完全に軌道に乗っていないのですか?
アドバイスありがとうございます!