使用R包 ggpattern实现柱形图渐变填充

实际项目中碰到该需求,发现ggpattern可实现。话不多说,直接上代码。

R代码
library(ggpattern)
library(ggplot2)

df <- data.frame(level = c("a", "b", "c", 'd'), outcome = c(2.3, 1.9, 3.2, 1))
gg <- ggplot(df) +
  geom_col_pattern(
    aes(level, outcome),pattern_fill = 'green', # 填充渐变色1
    pattern = 'gradient',
    pattern_fill2 = 'red', # 填充渐变色2,配合渐变色1实现多色渐变
    fill = NA
  ) + 
  geom_text(aes(x=level,y=outcome+ .1,label='mytext')) +
  theme_bw(18) +
  theme(legend.position = 'none')
plot(gg)
ggsave('gradient-fill.png',width = 8,height = 6)

gg <- ggplot(df) +
  geom_rect_pattern(
    aes(xmin=0,xmax = 1,ymin=0,ymax = 4), 
    pattern_fill = 'green', 
    pattern_fill2 = 'red',
    fill = NA,
    pattern = 'gradient') +
  
plot(gg)
最终效果:

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值