如何绘制两个不同列的分组条形图?

时间:2014-09-03 19:47:26

标签: r bar-chart

我有一个data.frame,我想为两个不同的列绘制一个分组的条形图。

以下是我关心的两个栏目。

str(credit_arff)

$ checking_status       : Factor w/ 4 levels "<0",">=200","0<=X<200",..:
$ class                 : Factor w/ 2 levels "bad","good":

我可以通过checking_status绘制barplot(mydata$checking_status)的条形图(如下所示),但是如何绘制条形图以便它表示有多少具有good或{{1}的对应值}}。

理想情况下,我希望每个条形图中都有不同的颜色,每个条形代表badgood

enter image description here

1 个答案:

答案 0 :(得分:1)

有很多方法可以做到这一点。请参阅此post

QuickR也是这类事情的一个很好的参考。

对于您的特定情况,您可以使用基本图形执行此操作:

credit_arff <- data.frame(
  checking_status = c("<0", "<0", "<0", ">=200", ">=200", "0<=X<200", "0<=X<200", "0<=X<200", "0<=X<200", "no checking", "no checking", "no checking"),
  class = c("bad", "bad", "good", "bad", "good", "bad", "bad", "good", "bad", "good", "good", "bad")
)

df <- table(credit_arff$class, credit_arff$checking_status)
barplot(df, beside=T, col=c("red", "blue"), legend=rownames(df))

your grouped bar chart