我正在尝试绘制网格数据并越过此绘图国家/地区边界。我得到了边界形式的地图包。我的代码是这样开始的:
graf <- ggplot(data=my_data,aes(x=lon,y=lat,z=med_pos,fill=med_pos))
graf <- graf + + scale_fill_gradient2(low='blue',mid='green',high='red', na.value = 'black')
graf <- graf + geom_tile()
此功能很好并将数据绘制为“填充轮廓”。当我尝试将国家边界设为多边形时,我的代码崩溃了。这是我这样做的方式:
map_data <- map_data('world2')
graf <- graf + geom_polygon(data=map_data,aes(x=long, y = lat, group = group),color='black',fill=NA)
但是如果我单独运行这最后一块,它就起作用了。有人知道是什么问题吗?
作为奖励问题,有谁知道如何解决 scale_fill_gradient min 和 max value ?
请注意,my_data 是一个包含 3 列 lat 、 lon 和 med_pos 的 data.frame。这些具有我想要绘制的坐标和值。
我找到了解决方案和问题。问题是用继承数据启动图形。宽度此代码工作:
graf <- ggplot() + geom_raster(data=my_data,aes(x=lon,y=lat,fill=med_pos))
graf <- graf + scale_fill_gradient2(low='blue',mid='green',high='red', na.value = 'black')
map_data <- map_data('world2')
graf <- graf + geom_polygon(data=map_data,aes(x=long, y = lat, group = group),color='black',fill=NA)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句