【问题标题】:How can I draw a barplot in r based on numeric threshold?如何根据数值阈值在 r 中绘制条形图? 【发布时间】:2017-05-23 22:59:49 【问题描述】: 我有一个如下的条形图。现在我希望列的颜色如果低于 0 则为红色,如果高于 0 则为绿色。我如何在 R 中做到这一点? 【问题讨论】: 请发布完整代码以重现情节 马克发布了一个解决方案。不过还是谢谢。 标签: r ggplot2 plotly 【解决方案1】: 我刚刚创建了另一个变量,将值归类为大于零或不大于零: library(ggplot2) set.seed(1839) df <- data.frame(x=factor(1:5), y=rnorm(5,0,2)) df$zero <- factor(ifelse(df$y>0, 1, 0)) ggplot(df, aes(x=x, y=y, fill=zero)) + geom_bar(stat="identity") + scale_fill_manual(values=c("red", "green"), guide=FALSE) 【讨论】: 啊,有道理。谢谢!