我有一个数据框列表,我想为每个数据框制作一个条形图 . 详细信息 sum
是条形的高度,而 users
是每个条形的标签 .
结果12
[[1]]
users sum
1 00250902DC7D 34
2 00250902FA92 34
3 00250902FB05 34
4 002509030C41 34
5 002509030E53 34
[[2]]
users sum
1 00250902DC7D 24
2 00250902FA92 24
3 00250902FB05 24
4 002509030C41 24
5 002509030E53 24
[[3]]
[1] times users signal mode diff
<0 rows> (or 0-length row.names)
[[4]]
users sum
1 00250902DC7D 1
2 00250902FA92 1
3 00250902FB05 1
4 002509030C41 1
5 002509030E53 71
dput(result12)列表(结构(列表(用户=结构(c(1L,3L,4L,10L,13L), . Label = c(“00250902DC7D”,“00250902FA91”,“00250902FA92”,“00250902FB05”,“ 00250902FB2E“,”00250902FE0A“,”00250902FE63“,”002509030AD2“,”002509030B9D“,”002509030C41“,”002509030C8D“,”002509030CE4“,”002509030E53“,”002509030E63“),类=”因子“),sum = c (34,34,34,34,34)),. Name = c(“users”,“sum”),row.names = c(NA,-5L),class =“data.frame”),结构( list(用户=结构(c(1L,3L,4L,10L,13L),. Label = c(“00250902DC7D”,“00250902FA91”,“00250902FA92”,“00250902FB05”,“00250902FB2E”,“00250902FE0A”,“00250902FE63 “,”002509030AD2“,”002509030B9D“,”002509030C41“,”002509030C8D“,”002509030CE4“,”002509030E53“,”002509030E63“),class =”factor“),sum = c(24,24,24,24, 24)),. Name = c(“users”,“sum”),row.names = c(NA,-5L),class =“data.frame”),结构(list(times = structure(numeric(0 ),class = c(“POSIXct”,“POSIXt”),tzone =“”),users = structure(integer(0), . Label = c(“00250902D”) C7D“,”00250902FA91“,”00250902FA92“,”00250902FB05“,”00250902FB2E“,”00250902FE0A“,”00250902FE63“,”002509030AD2“,”002509030B9D“,”002509030C41“,”002509030C8D“,”002509030CE4“,”002509030E53“ ,“002509030E63”),class =“factor”),signal = structure(integer(0), . Label = c(“false”,“true”),class =“factor”),mode = structure(整数(0) ), . Label = c(“OFF”,“ON”),class =“factor”),diff = numeric(0)), . Name = c(“times”,“users”,“signal”,“mode” “,”diff“),row.names = integer(0),class =”data.frame“),structure(list(users = structure(c(1L,3L,4L,10L,13L),. Label = c (“00250902DC7D”,“00250902FA91”,“00250902FA92”,“00250902FB05”,“00250902FB2E”,“00250902FE0A”,“00250902FE63”,“002509030AD2”,“002509030B9D”,“002509030C41”,“002509030C8D”,“002509030CE4”,“ 002509030E53“,”002509030E63“),class =”factor“),sum = c(1,1,1,1,71)), . Name = c(”users“,”sum“),row.names = c (NA,-5L),class =“data.frame”))
如何自动生成我的条形图?
2 回答
您可以使用
reshape2
包中的melt()
来重新整形数据 . 然后你可以使用ggplot2
制作条形图 .L1
是输入列表的编号,因此's what'被分组(如果我理解正确的话) . 如果你没有_g6511_t在ggplot行的末尾插入+ facet_grid('L1~.')
.您需要先从列表中删除空数据帧 .
然后使用,查看它们(在pdf文档中)