ggplot用于数据帧中的两列

时间:2016-08-09 04:29:05

标签: r

我有两个列,即我的数据框中的水果和频率。我正在尝试绘制直方图或条形图,使得我的x轴有水果,y有freq.My表是这样的。

fruit   freq
apple   5
orange  0
banana  3
grapes  10

我是初学者,无法弄清楚这一点。

2 个答案:

答案 0 :(得分:1)

以下是您可以做的事情:

# Define the data
myData = data.frame("fruit" = c("apple", "orange", "banana", "grapes"), "freq" = c(5, 0, 3, 10))
# Load library
library(ggplot2)
# Call plot function
ggplot(data = myData, aes(x = fruit, y = freq)) + geom_bar(stat = "identity")

我们调用ggplot()函数来创建基础/空图。在这个函数中,我们告诉ggplot我们的数据是什么,并告诉它映射到'x'和'y'。你的'x'是水果,'y'是freq。之后我们通过调用geom_bar(stat = "identity")向它添加条形图。我们在这里使用stat = "identity"因为我们已经有了每个水果的数量。更多信息请参见:http://docs.ggplot2.org/0.9.3.1/geom_bar.html

enter image description here

答案 1 :(得分:-1)

我知道标题明确指向ggplot,但如果您处理的是简单的事情,请将您的数据放在data.frame f

barplot(f$freq, names.arg=f$fruit)

enter image description here