我想在R中绘制一个堆积的条形图,我的数据看起来像这样:
此表是针对日期的值,可以看出,存在重复的日期,但日期各不相同。我想使用此数据绘制条形图。
combined = rbind(x,y)
combined = combined[order(combined$Group.1),]
barplot(combined$x,main=paste("x vs y Breakdown",Sys.time()),names.arg = combined$Group.1,horiz = TRUE,las=2,xlim=c(-30,30),col = 'blue',beside = True)
想要一个堆积图,在该图中可以看到日期值。如何更改我的代码?
答案 0 :(得分:1)
您可以使用ggplot2
轻松创建此图形。
这是一段使用类似于您现有数据框的代码:
library(ggplot2)
my_data <- data.frame(
date = factor(c(1, 2, 2, 3, 3, 4, 5, 5, 6, 7, 8, 8)),
x = c(-2, 14, -8, -13, 3, -4, 9, 8, 3, -4, 8, -1)
)
g <- ggplot(my_data, aes(x = date, y = x)) +
geom_bar(
stat = "identity", position = position_stack(),
color = "white", fill = "lightblue"
) +
coord_flip()
这是输出:
很显然,the official documentation是一种开始更好地了解如何对其进行改进的好方法。