ggplot & colors:如何使用另一个变量的颜色渐变?

问题描述 投票:0回答:0

我正在使用 shapefile 绘制我的国家地图。这是我正在使用的脚本,它工作正常

right_join(shapefiles, dataset, by = "COD_PROV") %>% 
  ggplot(aes(fill = `Real Wage 1`)) +
  geom_sf() +
  theme_void() +
  theme(legend.title=element_blank(), legend.key.size = unit(1, 'cm'),
        legend.text = element_text(size=15))+
  scale_fill_gradientn(colors = c( "#FFFFFF","#FFFF00", "#FF0000", "#000000"))

作为输出,它用我指定的颜色渐变填充不同区域,这正是我一直在寻找的。

现在,考虑我有 2 个变量:“实际工资 1”和“实际工资 2”。

“实际工资 2”比“实际工资 1”具有更多价值。

我想做的是用“实际工资 1”填充区域而不改变颜色,但使用基于“实际工资 2”值的渐变。

更清楚地说,我正在尝试使用变量“实际工资 2”的值生成的黄色、橙色和红色的渐变色,并根据变量的值将这种颜色比例应用到我的地理地图中“实际工资 1'.

我知道命令“geom_blank”标准化了颜色的比例,所以我试过了,但它不起作用

right_join(shapefiles, dataset, by = "COD_PROV") %>% 
  ggplot(aes(fill = `Real Wage 1`)) +
  geom_sf() +
  theme_void() +
  theme(legend.title=element_blank(), legend.key.size = unit(1, 'cm'),
        legend.text = element_text(size=15))+
  scale_fill_gradientn(colors = c( "#FFFFFF","#FFFF00", "#FF0000", "#000000"))+
  geom_blank(dataset$`Real Wage 2`)

R 回复

Error in `geom_blank()`:
! `mapping` must be created by `aes()`
Run `rlang::last_error()` to see where the error occurred.

我该如何解决??

r variables ggplot2 plot colors
© www.soinside.com 2019 - 2024. All rights reserved.