使用自定义渐变填充直方图箱
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用自定义渐变填充直方图箱相关的知识,希望对你有一定的参考价值。
我想在R和ggplot2中创建一个直方图,其中根据它们的连续x值填充区间。大多数教程仅通过离散值或密度/计数进行着色。
以下this example能够用彩虹尺度为垃圾箱着色:
df <- data.frame(x = runif(100))
ggplot(df) +
geom_histogram(aes(x), fill = rainbow(30))
我想使用颜色渐变,其中容器从蓝色(最低)到黄色(最高)。 scale_fill_gradient()
函数似乎实现了,但是当我为rainbow()
参数插入它代替fill
时,我收到一个错误:
> ggplot(df) +
+ geom_histogram(aes(x), fill = scale_fill_gradient(low='blue', high='yellow'))
Error: Aesthetics must be either length 1 or the same as the data (30): fill
我尝试了几种方法为秤提供30的长度,但每次都会得到相同的错误。所以我的问题是:
scale_color_gradient
是fill
论证的正确功能还是我必须使用另一个?- 如果它是正确的功能,我怎样才能正确提供长度?
答案
如果你想为每个箱子设置不同的颜色,你需要在美学中指定fill = ..x..
,这是geom_histogram
的必要特征。使用scale_fill_gradient
和您喜欢的颜色渐变,然后产生以下输出:
ggplot(df, aes(x, fill = ..x..)) +
geom_histogram() +
scale_fill_gradient(low='blue', high='yellow')
以上是关于使用自定义渐变填充直方图箱的主要内容,如果未能解决你的问题,请参考以下文章
R语言使用GGally包的ggpairs函数可视化分组多变量的两两关系图编写自定义函数改变密度图曲线的透明度对角线上连续变量密度图离散变量条形图两两关系图中包含散点图直方图箱图相关性数值
R语言使用ggpubr包的ggboxplot函数可视化分组箱图(添加jitter抖动数据点自定义不同分组数据点的形状自定义调色板不添加填充色)
R语言使用ggpubr包的ggboxplot函数可视化分组箱图(添加jitter抖动数据点自定义不同分组数据点的形状自定义调色板不添加填充色)