最も適切な2変量コロプレスマッピングのカラースキームを選択するのに役立ちます


10

数値変数の上にコロプレスマップで名目上の変数(2つのカテゴリ-天水と灌漑)をオーバーレイしようとしています。

ここに画像の説明を入力してください

2つのカテゴリ間のパターンの違いを強調するために、1つのカテゴリを別の色(「赤」の灌漑領域)で概説し、色のないものは天水領域です。

ただし、マップは雑然としており、アウトラインは数値変数の暗い色調と混ざっています。

基になる変数の全体的な分布を隠すと感じるので、2つの異なる色の網掛けスキームを使用して2つのカテゴリを表すことを避けようとしています。

Rでggplots2パッケージを使用してこの二変量分類を表すより良い方法はありますか(現在、添付のマップを作成するために使用しています)?

これらのマップは最終的に紙に印刷されます。


灌漑地域の境界でユークリッド距離を計算することを検討してください。詳細はこちら:gis.stackexchange.com/q/53163/8104
アーロン

@Aaron、リンクのおかげで、これに方向シェーディングが機能する可能性があります。バッファツールを使用して、Rでこれらの領域を描画できます。ただし、懸念事項は、ポリゴンのサイズが比較的小さいことです。輪郭。これを試してみます。
varungoel123 2014

@ varungoel123 興味のあるrasterおよびrasterVisパッケージを使用してRソリューションを投稿しました。
thiagoveloso

回答:


7

灌漑地域を示すために輪郭の代わりに、透明な塗りつぶしパターン(例:ライン、hachures)のようなものを使用する必要があります。例は次のようになります。

http://www.geog.fu-berlin.de/de/Karto/umn_karten/bilder/komb2.png

または、グーグルの「マップ塗りつぶしパターン」で、オプションの概要を取得します。灌漑地域にのみ輪郭線を使用すると、灌漑は連続的な現象ではないという印象を与えます。


それは素晴らしい提案です。これをggplot2またはRのその他のパッケージで行う方法はありますか?私は60〜70枚の地図を持っていますが、そこでは天水地域と灌漑地域の境界が一定のままです。ggplot2を使用して、マップ作成を自動化することができました。これは、ArcMapまたはQgisを使用して達成できなかったものです
varungoel123

私はggplot2やRに精通していません。しかし、この塗りつぶしパターンはかなり標準的なものであり、達成するのはそれほど難しくありません。QgisまたはArcMapでそれを行う方法を知っています。どちらのプログラムでも、定義したスタイルを保存して再利用できます。自動化は両方で十分可能です。Pythonスクリプトまたはarcpyがあなたのために仕事をしてくれるでしょう。
クリスP

1
残念ながら、ggplotは塗りつぶしパターンが得意ではありません(ただし、代替案についてはこちらを参照してください)
cengel 14

バージョン2.0.1のQGisは、自動マップ作成も提供します
Zbynek '27

1

私は最近、同様のマップを作成する必要がありました。私が思いついたソリューションは、ggplot2(ところで素晴らしいパッケージです)ではなく、rasterVisパッケージを使用しています。

私の場合は、時間の経過に伴う傾向のマップ(数値変数でもあります)と、傾向の有意性を示すマップ(統計的検定から得られたもの)がありました。

私の場合、数値マップの上に有意性マップをプロットしたいと思いました。これは、「点描」パターンに似ており、信頼度がどこに高いかを示しています。

これは大体、マップの作成に使用したコードです。

require(raster)
require(rasterVis)

# Scratch raster objects
data(volcano)
r1 <- raster(volcano)

over <- ifelse(volcano >=160 & volcano <=180, 1, NA) # This is the "mask" raster
r2 <- raster(over)

# And this is the key step:
# To convert the "mask" raster to spatial points
r.mask <- rasterToPoints(r2, spatial=TRUE)

# Plot
levelplot(r1, margin=F) +
layer(sp.points(r.mask, pch=20, cex=0.3, alpha=0.8))

あなたの場合、次のようにしてコードを変更できます:

1)「バイナリ」ラスターを作成します。たとえば、0は天水で1は灌漑されており、私が行ったようにプロットします。

2)天水用と灌漑用の2つの異なるマスクを作成し、両方を異なるオブジェクトとしてプロットします(たとえば、天水用の円と天水用の十字)。

2番目の代替案では、マップが視覚的に「汚染された」ように見えると思いますが、spパッケージのドキュメント、特にを参照することで、ポイントのパラメーターをいつでも制御できます?sp.points

それが役に立てば幸い。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.