use*_*394 2 charts r bar-chart ggplot2
我一直试图创建条形图一段时间,但我需要帮助:
name <- c('t1','t2')
reading <- c('yyyggrggryyy','grgrgrrryyyy')
df <- data.frame(name, reading)
Run Code Online (Sandbox Code Playgroud)
读取值只能是'y','g'或'r',字符串的长度始终为12.我试图将读数"转换"为每个名称的堆积条形图,如下所示:
t1堆积条:
Color Height
------ ------
yellow 3
green 2
red 1
green 2
red 1
yellow 3
Run Code Online (Sandbox Code Playgroud)
谢谢
> df <- data.frame(name=rep(name, each=12),
reading=unlist(sapply(reading, strsplit, split="")))
> df
name reading
yyyggrggryyy1 t1 y
yyyggrggryyy2 t1 y
yyyggrggryyy3 t1 y
yyyggrggryyy4 t1 g
snipped
grgrgrrryyyy4 t2 r
grgrgrrryyyy5 t2 g
grgrgrrryyyy6 t2 r
grgrgrrryyyy7 t2 r
grgrgrrryyyy8 t2 r
grgrgrrryyyy9 t2 y
grgrgrrryyyy10 t2 y
grgrgrrryyyy11 t2 y
grgrgrrryyyy12 t2 y
qplot(reading, data=df, geom="bar")+facet_grid(~name)
Run Code Online (Sandbox Code Playgroud)

如果你想要一个堆叠的条形图,那么你需要传递一个x参数,该参数对于你想要堆叠的分组变量是相同的:
qplot(x=name, data=df)+facet_grid(~name)+geom_bar(aes(fill = reading))
Run Code Online (Sandbox Code Playgroud)
