我在使用 ggplot2 直方图获取连续变量以处理 scale_fill_gradient 时遇到问题。 (我有一个解决方法,可以将变量转换为因子并使用 scale_fill_manual 并手动设置它们,因此我知道我的库和一般 ggplot 结构是正确的。这是我的第一个例子。)我已经根据帮助文本完成了所有操作但是在第二个示例中,它似乎根本无法识别我的填充。
> str(data)
'data.frame': 506 obs. of 9 variables:
$ value_A : int 250000 219000 358000 340000 364000 295000
$ factor_B : Factor w/ 6 levels "4","5","6","7",..: 4 3 4 4 4 3
$ numeric_C : num 15.3 17.8 17.8 18.7 18
这很好用(它在一个因子变量上):
ggplot(data, aes(value, fill = factor_B)) +
geom_histogram(binwidth = 30000) + ...
scale_fill_manual(values = ("#9db5bf", "#85a3b0","#6c90a0","#547e90", "#3b6b80","#235970"))
这不起作用,它以灰色填充条形图,我也没有得到任何类型的图例:(这是在数字变量上)
ggplot(data, aes(value, fill = numeric_C)) +
geom_histogram(binwidth = 30000) + ...
scale_fill_gradient("some Ratio", low = "#9db5bf", high = "#235970")
最佳答案
试试这个:
ggplot(data, aes(value, fill = numeric_C)) +
geom_histogram(aes(fill = ..count..), binwidth = 30000) + # ...
scale_fill_gradient("some Ratio", low = "#9db5bf", high = "#235970")
关于r - ggplot2 直方图 scale_fill_gradient 不适用于连续变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43129678/