Ich versuche, eine nominelle Variable (2 Kategorien - Regenfutter vs. Bewässert) in einer Choroplethenkarte über eine numerische Variable zu legen.
Um den Unterschied im Muster zwischen den beiden Kategorien hervorzuheben, habe ich eine Kategorie mit einer anderen Farbe (bewässerte Bereiche in "rot") umrissen, während die ungefärbten Bereiche Regenfelder sind.
Die Karte fühlt sich jedoch unübersichtlich an und der Umriss wird mit dunkleren Schattierungen der numerischen Variablen gemischt.
Ich versuche zu vermeiden, zwei verschiedene Farbschattierungsschemata zu verwenden, um die beiden Kategorien darzustellen, da ich der Meinung bin, dass dies die Gesamtverteilung der zugrunde liegenden Variablen verbergen würde.
Gibt es eine bessere Möglichkeit, diese bivariate Klassifizierung mithilfe des ggplots2-Pakets in R darzustellen (das ich derzeit zum Erstellen der angehängten Karte verwende)?
Diese Karten werden schließlich auf Papier gedruckt.
quelle
raster
und veröffentlichtrasterVis
, die Sie interessieren könnten.Antworten:
Anstelle von Umrissen zur Angabe der bewässerten Bereiche sollten Sie ein transparentes Füllmuster (z. B. Linien, Hachuren) verwenden. Ein Beispiel würde ähnlich aussehen:
oder googeln Sie einfach "Kartenfüllmuster", um einen Überblick über die Optionen zu erhalten. Die Verwendung von Konturen nur für die bewässerten Gebiete würde den Eindruck erwecken, dass die Bewässerung kein kontinuierliches Phänomen ist.
quelle
Ich musste kürzlich eine ähnliche Karte machen. Die Lösung, die ich mir ausgedacht habe, verwendet das rasterVis-Paket anstelle von ggplot2 (was übrigens ein fantastisches Paket ist).
In meinem Fall hatte ich eine Karte der Trends über die Zeit (was auch eine numerische Variable ist) und auch eine Karte, die die Signifikanz des Trends zeigt (erhalten aus einem statistischen Test).
In meinem Fall wollte ich die Signifikanzkarte über die numerische Karte zeichnen, ähnlich einem "Punktierungsmuster", um zu zeigen, wo das Konfidenzniveau höher war.
Dies ist ungefähr der Code, mit dem ich die Karte erstellt habe.
In Ihrem Fall können Sie den Code ändern, indem Sie:
1) Erstellen eines "binären" Rasters, in dem beispielsweise 0 mit Regen und 1 mit Bewässerung behandelt wird, und Plotten wie bei mir oder;
2) Erstellen Sie zwei verschiedene Masken, eine für Regenfutter und eine für Bewässerung, und zeichnen Sie beide als unterschiedliche Objekte (z. B. Kreise für Regenfutter und Kreuze für Regenfutter).
Ich denke, die zweite Alternative würde die Karte zu visuell "verschmutzt" erscheinen lassen, aber Sie können die Parameter der Punkte immer steuern, indem Sie die
sp
Paketdokumentation konsultieren - speziell?sp.points
.Ich hoffe es hilft.
quelle