R Intrigue Remplie de Longitude-Latitude Cellules de la Grille sur la Carte
J'ai un bloc de données contenant un certain nombre de (x,y,z)
points de données, (x,y)
est en bas à droite de coordonnée de longitude-latitude de cellules de taille w
(par exemple à 1 degré de la grille). Le z
valeur a été en moyenne au cours de cette cellule.
Je voudrais tracer ces points dans R, de sorte que l'ensemble de la cellule de la grille est remplie avec des couleurs dérivées de z
.
Le résultat devrait ressembler à l'une de ces images:
La projection elle-même (par exemple, conique conforme de Lambert, la projection équirectangulaire) n'est pas important, juste la grille de la cellule de traçage.
Mes données sont rares: pas tous longitude-latitude cellule aura données qui y sont associées.
Mon espoir serait une solution similaire à
library(maps)
map("state")
grid_points(my_data,c("x","y","z"),0.5)
où 0.5 est la résolution de la grille ci-dessus, en indiquant 0,5 degré cellule.
Toutes les pensées?
Merci!
- Mon plaisir, @PaulHiemstra. Votre réponse a été spot-on sur ce qu'il faut chercher, je voulais juste de combiner l'ensemble des choses un peu plus. Merci beaucoup pour votre aide.
Vous devez vous connecter pour publier un commentaire.
Une alternative à l'utilisation de
spplot
ouimage
est d'utiliserggplot2
. Pertinentes géométries sontgeom_raster
etgeom_tile
. Le premier est censé fonctionner mieux et obtenir des fichiers plus petits, et la deuxième est plus standard. L'exemple suivant l'appel:orginates de ce billet de blog de la mine. En outre,
ggplot2
soutient une série de projections à travers lemapproj
package, voircoord_map
pour plus de détails.Ce qui suit est un exemple de travail (à condition que vous avez défini
YOUR_DATA
pour avoir x,y,z colonnes):Si vos données.le cadre est "x", essayez ceci:
Pour obtenir une réponse exacte vous devez fournir un échantillon de vos données, il faut espérer qu'un ensemble de données.de cadre ou de la source où vous téléchargez et le code que vous avez utilisé pour le lire dans R.
Si le code ci-dessus échoue à la
gridded()<-
étape, alors il est probable que votrex
ety
valeurs ne fait pas de fournir une grille régulière, ce qui est implicite par vos parcelles. Si vraiment ils sont maillées longitude/latitude valeurs et vous avez besoin de les projeter à ceux de votre image, puis voir leraster
paquet, ou plus généralement de largdal
paquet.(Les parcelles de me regarder comme l'un des "Albers Equal Area et Conique Conforme de Lambert Projections de l'Amérique du Nord", comme indiqué sur ce site: http://www.colorado.edu/geography/gcraft/notes/mapproj/mapproj_f.html).
Voir http://spatialreference.org pour obtenir le PROJ.4 chaîne de projection que vous pouvez utiliser dans
sp
ouraster
.J'ai essayé de faire ce genre de carte récemment, et qui finit à l'aide de la fonction
interp
de la bibliothèqueakima
à intrapolate ma z de données dans une grille régulière avant de traçage (tout type de projections devra être fait avant l'utilisation deinterp
):Vous pouvez faire ceci: