我有这段代码:
ggplot(legend = FALSE) +
geom_polygon(data = map.df, size = 0.1, aes(long, lat, group = group, colour = "grey80", fill = ind_vul)) +
scale_fill_gradient2(low = "blue", high = "red", midpoint = mean(map.df$ind_vul, na.rm = TRUE)) +
geom_point(data = puntos.df, aes(as.numeric(long), as.numeric(lat), colour = geografico), size = 2) +
facet_wrap(~municipio, scales = "free") +
tema.mapas
我发现了几个问题(显然与我对这个主题的无知有关),问题如下(所有相关的,见ggplot throwing an error in weird circumstances):
geom_polygon
中的尺寸参数工作奇怪,aes
之外没有效果,如果没有colour
参数,则会忽略它内部。< / p>
在colour
上面的代码中忽略geom_polygon
参数(在colour="grey80"
中),但多边形的轮廓线是另一种颜色,而“grey80”看起来像点的传说!
答案 0 :(得分:0)
由于colour='grey80'
和size=0.1
没有要求您map.df
的列,因此他们应该在aes
来电之外。换句话说,当colour
位于aes
内时,ggplot认为你告诉它将数据的颜色基于数据中的某些列,或者如果给出一个类似于此处的文字字符串,在通常的调色板中创建该字符串与某些条目之间的映射。在某些情况下,将美学映射到文字字符串可能是一种有用的技术,但与将美学设置为值不同。在aes
之外,颜色将查找名为"grey80"
的颜色,并将使用该特定颜色。
[改编自评论并稍微扩展]