r - 带有分隔符而不是刻度的连续颜色条
问题描述
图片应该很好地说明我想要实现的目标。理想情况下,生成的颜色条将保持连续的性质,即,应该基于连续而不是离散的美学,或者至少非常接近以表现得像它。
这也意味着,不仅仅是将离散填充的图例键足够靠近的简单方法。
是的,我可以创建一个假的 legend,但我想要一个在图例绘图级别进行修改的解决方案。
我也会对有趣的网格黑客非常满意!
library(ggplot2)
ggplot(iris, aes(Sepal.Length, y = Sepal.Width, fill = Petal.Length))+
geom_point(shape = 21) +
scale_fill_continuous() +
guides(fill = guide_colorbar(ticks.colour = "black"))
截图了,见谅!我不想创建箭头,只是带有分隔符而不是刻度的连续刻度
最终目标是重现此线程中最初提出的颜色条
然而,这不是关于创建离散梯度条,这只是关于分隔符!
离散渐变条不是问题,已经有解决方案(例如,https : //stackoverflow.com/a/62544405/7941188、https : //stackoverflow.com/a/62556763/7941188、https:// stackoverflow.com/a/50540633/7941188)
解决方案
当然有一个快速的网格破解 Tjebo,但它可能需要一些工作才能使其健壮(按名称而不是按数字索引):
library(ggplot2)
library(grid)
p <- ggplot(iris, aes(Sepal.Length, y = Sepal.Width, fill = Petal.Length))+
geom_point(shape = 21) +
scale_fill_continuous() +
guides(fill = guide_colorbar(ticks.colour = "black"))
gt <- ggplot_gtable(ggplot_build(p))
x1 <- gt$grobs[[which(gt$layout$name == "guide-box")]]$grobs[[1]]$grobs[[5]]$x1
x1[1:7] <- x1[8:14]
gt$grobs[[which(gt$layout$name == "guide-box")]]$grobs[[1]]$grobs[[5]]$x1 <- x1
grid.newpage()
grid.draw(gt)
由reprex 包(v0.3.0)于 2020 年 6 月 24 日创建
推荐阅读
- kotlin - 无法在 kotlin 多平台项目中导入依赖项
- llvm - 使用 llvm 将函数/全局变量链接到特定地址
- configuration - Prometheus 的使用 scrape_timeout
- python - 如何为特定集群运行线性回归
- list - Magento 2 - How to have 2 separates phtml to handle products list and products grid?
- swift - 在数据库中创建新数据后更新 URLSession
- linux - (linux) gzip 失败,设备上没有剩余空间
- sql - 为文件存储和搜索选择正确的数据库技术
- vector - Rust 通用向量
> - angular - Angular:实例化具有 StaticProvider 作为参数的类