我正尝试以多方面的方式绘制每年的女性和男性数据。例如,2013年女性有10,949个数据点,男性有53,351个数据点。这是数据示例:
cost gender year
1 305.665 Female 2013
2 194.380 Female 2013
3 462.490 Female 2013
4 200.430 Female 2013
5 188.570 Female 2013
6 277.245 Female 2013
我编写的代码是:
library(ggplot2)
costs<-read.table("cost_data.txt",header=TRUE)
df<-data.frame(costs)
ggplot(df, aes(df$cost,color=df$gender)) +
geom_histogram(breaks=seq(0,3000,by=20),alpha=0.2) + facet_wrap(~year)+
labs(x="Costs",y="Number of Members")
哪个产生以下图表:
现在,如果我刚刚在Excel中以20的二进制宽度绘制2013年直方图,则女性图的峰值将达到300,而男性的峰值将达到1800。因此,我在图表中绘制的内容对我来说没有任何意义。它显示了女性要比男性高,而且我不确定为什么图例(或直方图)不可靠。
只需要一点指导。
答案 0 :(得分:1)
对于那些不阅读评论的人...
# To show bars side-by-side
geom_histogram(breaks=seq(0,3000,by=20),alpha=0.2, position = "dodge")
# To have filled bars and legend keys
ggplot(df, aes(cost,fill=gender))
# In completion
library(ggplot2)
costs<-read.table("cost_data.txt",header=TRUE)
df<-data.frame(costs)
ggplot(df, aes(cost,fill=gender)) +
geom_histogram(breaks=seq(0,3000,by=20),alpha=0.2, position="dodge") + facet_wrap(~year)+
labs(x="Costs",y="Number of Members")