R 是否可以在带有ggplot geom_sf的地图中使用单独的固定颜色
我的问题是,我有一个sf对象,我想用ggplot映射它,并用因子变量的颜色填充县。 我为每个因子级别定义了一种颜色,即使是数据帧的子集也应该固定 我的问题是:我在图例中看到了正确的颜色,我看到了我的地图,但县没有填充任何颜色 我的测试数据集在这里: 第一步: 我定义了一个指示符变量,它位于0和任何正值之间。大于1的值为arlaming。正常值低于0.3。为了预测未来会发生什么,我将用分类指数变量的颜色绘制我的县。因此,我使用以下颜色定义了data.frame:R 是否可以在带有ggplot geom_sf的地图中使用单独的固定颜色,r,ggplot2,colors,sf,R,Ggplot2,Colors,Sf,我的问题是,我有一个sf对象,我想用ggplot映射它,并用因子变量的颜色填充县。 我为每个因子级别定义了一种颜色,即使是数据帧的子集也应该固定 我的问题是:我在图例中看到了正确的颜色,我看到了我的地图,但县没有填充任何颜色 我的测试数据集在这里: 第一步: 我定义了一个指示符变量,它位于0和任何正值之间。大于1的值为arlaming。正常值低于0.3。为了预测未来会发生什么,我将用分类指数变量的颜色绘制我的县。因此,我使用以下颜色定义了data.frame: brk <- c(0,0.
brk <- c(0,0.1,0.5,0.6,0.8,0.9,1,Inf)
col <- c("greenyellow","chartreuse4","gold",
"darkgoldenrod1","orange","orangered3","red")
lab <- c("up to 0.1","up to 0.3","up to 0.6",
"up to 0.8","up to 0.9","up to 1","1 and more")
dfcol <-cbind.data.frame(lab,col) %>%
mutate(lab = factor(lab, levels = lab)
结果是:
我在图例中看到了我的因子变量实验室
我看到我的地图上有我感兴趣的所有县的边界
但是这些县没有填充任何与因子变量lab
相关的颜色
我犯了什么错
谢谢你的帮助 一种可能的解决方案是完全合并两个数据帧,以便显示所有值:
库(dplyr)
为什么每件事都这么容易?非常感谢你!
ggplot()+
geom_sf(data = dfgeo,aes(fill = lab)) +
scale_fill_manual(values = col,
limits = brk[1:7],
labels = lab ) +
theme_void()