【发布时间】:2015-06-23 13:45:36
【问题描述】:
根据标题,我在 ggplot2 中的问题是图例的颜色与地图上显示的颜色没有关联。
我有一个变量是欧洲地图:
# Create a map of Europe
eu_base <- qmap(location = "Cologne, Germany", zoom = 4, color = "bw", extent = "panel")
然后我有一个包含 3 列的数据框:纬度、经度和值(持续时间),称为 TimeOverdf。
然后,我在 TimeOverdf 变量中创建列 value 的离散值:
# I create a variable with the breaks
brk<-unique(c(1,seq(10,max(TimeOverdf$value),10),max(TimeOverdf$value)))
# Create a column on my dataframe with discrete values
TimeOverdf$value_discrete <- cut(TimeOverdf$value, breaks=brk, include.lowest=T)
当我用离散值和颜色创建我的绘图时:
eu_base +
geom_point(data = TimeOverdf, aes(x = lon, y = lat, colour = value_discrete),
alpha = 0.01) +
scale_colour_manual("Duration",
values = colorRampPalette(c("blue", "yellow", "red"))(length(brk)-1),
breaks=waiver())
图例项的颜色都是灰色的,似乎与我在scale_colour_manual 中指定的颜色没有关联。我的印象是它们与eu_base 地图相关联。如何使图例中的颜色与情节中的颜色一致?
【问题讨论】:
-
您的
alpha太低。如果你把它改回alpha = 1,你应该会看到你的颜色 -
Vlo,非常感谢。我现在可以看到颜色了。但是现在我有另一个问题。我希望地图中点的颜色是透明的,否则我看不到欧洲的基础地图。但同时在传说中,它们应该清晰可见。有什么建议吗?
-
添加
guides(color = guide_legend(override.aes = list(alpha = 1)))作为答案添加。