我想按照下面显示的数据集按组创建图表。
Type Group price
1 Fair Cut 4405.202
2 Good Cut 4053.888
3 Very Good Cut 4175.925
4 Premium Cut 4779.045
5 Ideal Cut 3654.54
6 D Color 3485.46
7 E Color 3291.415
8 F Color 3760.281
9 G Color 4091.388
10 H Color 4610.674
11 I Color 5083.602
12 J Color 5173.224
特别是,我想在垂直轴上创建"price"
的图表,在"Type"
的水平轴上创建Group = "Cut"
,并为Group="Color"
创建相似的图表。我的数据集中有更多组,我想为所有其他组自动执行此过程。我已经尝试了几个选项,包括使用ggplot和group by facet,但是我从ggplot获得的图表对于每个Group都不是唯一的。
任何帮助将不胜感激。
感谢。
此致 菲利普
答案 0 :(得分:1)
阅读数据:
df <- read.table(text="Type Group price
Fair Cut 4405.202
Good Cut 4053.888
Very_Good Cut 4175.925
Premium Cut 4779.045
Ideal Cut 3654.54
D Color 3485.46
E Color 3291.415
F Color 3760.281
G Color 4091.388
H Color 4610.674
I Color 5083.602
J Color 5173.224", header=TRUE)
加载ggplot
包:
require(ggplot2)
创建一个刻面图:
ggplot(data=df, aes(x=Type,y=price)) +
geom_bar(stat="identity") +
facet_grid(Group~.) +
theme_bw() # making the plot a little more pretty
将ggplot
内的数据设置为仅包含一个组的图:
ggplot(data=df[df$Group=="Cut",], aes(x=Type,y=price)) +
geom_bar(stat="identity", fill="grey90", color="blue") + # making plot look better with 'fill' & 'color' parameters
theme_bw()