如何绘制连续着色的条形图,类似于scale_fill_brewer()
但更连续?
ggplot(diamonds, aes(clarity, fill=cut)) + geom_bar()
答案 0 :(得分:1)
我会对此发表评论,但尚未足够的代表......
您对钻石数据集的问题在于数据是离散的,这意味着属于它的每个值/观察都是独立的和独立的。为了进行连续填充,您需要连续数据(属于它的值/观测可以采用有限或无限区间内的任何值)。
如果有连续数据集,可以使用以下ggplot2命令:scale_colour_gradient。
修改强>
你可以试试这个:ggplot(diamonds, aes(clarity, fill=..count..)) + geom_bar()
,但是你放弃了剪切信息:
答案 1 :(得分:0)
Color Brewer内置了顺序配色方案 - 检查colorbrewer2.org。例如,
ggplot(diamonds, aes(clarity, fill=cut)) +
geom_bar() +
scale_fill_brewer(palette="PuBu")
产量
根据OP的评论,OP似乎希望将alpha
映射到cut
的因子级别,alpha
随着因子级别的增加而减少(即{ {1}}对于alpha
,“Fair”应该高于alpha
。我们可以使用Ideal
手动分配alpha
,但更简单的解决方案是使用scale_alpha_manual
定义scale_alpha_discrete
参数反向':
levels
当然,您可以使用ggplot(diamonds, aes(clarity, alpha=cut)) + geom_bar(fill="darkblue") +
scale_alpha_discrete(range=c(1, 0.2)) #Note that range is ordered 'backwards'
参数调整颜色fill
(geom_bar
看起来相当紫色。)