我有几个关于GGPLOT2磨制问题...安排非小柱facet_grid(和使用非小列标签)
比方说,我有一个返回,看起来像这样的数据的查询:
(请注意,它是由等级递增,报警ASC和两个报警下令,因为他们的总访问量= 1798第4周,并且排名是根据总第4周设置有3等级)
Rank Week Alarm Total
1 1 BELTWEIGHER HIGH HIGH 1000
1 2 BELTWEIGHER HIGH HIGH 1050
1 3 BELTWEIGHER HIGH HIGH 900
1 4 BELTWEIGHER HIGH HIGH 1800
2 1 MICROWAVE LHS 200
2 2 MICROWAVE LHS 1200
2 3 MICROWAVE LHS 400
2 4 MICROWAVE LHS 1799
3 1 HI PRESS FILTER 2 CLOG SW 1250
3 2 HI PRESS FILTER 2 CLOG SW 1640
3 3 HI PRESS FILTER 2 CLOG SW 1000
3 4 HI PRESS FILTER 2 CLOG SW 1798
3 1 LOW PRESS FILTER 2 CLOG SW 800
3 2 LOW PRESS FILTER 2 CLOG SW 1200
3 3 LOW PRESS FILTER 2 CLOG SW 800
3 4 LOW PRESS FILTER 2 CLOG SW 1798
(下面的复制代码)
Rank = c(rep(1,4),rep(2,4),rep(3,8))
Week = c(rep(1:4,4))
Total = c( 1000,1050,900,1800,
200,1200,400,1799,
1250,1640,1000,1798,
800,1200,800,1798)
Alarm = c(rep("BELTWEIGHER HIGH HIGH",4),
rep("MICROWAVE LHS",4),
rep("HI PRESS FILTER 2 CLOG SW",4),
rep("LOW PRESS FILTER 2 CLOG SW",4))
spark <- data.frame(Rank, Week, Alarm, Total)
现在,当我做到这一点...
s <- ggplot(spark, aes(Week, Total)) +
opts(
panel.background = theme_rect(size = 1, colour = "lightgray"),
panel.grid.major = theme_blank(),
panel.grid.minor = theme_blank(),
axis.line = theme_blank(),
axis.text.x = theme_blank(),
axis.text.y = theme_blank(),
axis.title.x = theme_blank(),
axis.title.y = theme_blank(),
axis.ticks = theme_blank(),
strip.background = theme_blank(),
strip.text.y = theme_text(size = 7, colour = "red", angle = 0)
)
s + facet_grid(Alarm ~ .) + geom_line()
我得到这个....
alt text http://img101.imageshack.us/img101/9103/ss20100315112108.png
注意,它根据报警和刻面按字母顺序排列刻面。
两个问题:
- 我如何能我把它通过报警刻面,但正确的顺序显示? (Rank asc,Alarm asc)。
alt text http://img17.imageshack.us/img17/6986/ss20100315113243.png
- 另外,我怎么能保持它的报警,但显示的标签刻面从排名,而不是报警?
alt text http://img85.imageshack.us/img85/470/ss20100315113529.png
请注意,我不能仅仅面的排名,因为GGPLOT2只能看到3面积那里有真正的4个不同的报警。
对于第二个问题,为什么不喜欢: 单曲+ facet_wrap(〜排名+报警,NcoI位= 1)+ geom_line()',或单曲+ facet_grid(报警〜。 )+ geom_line(aes(color = factor(Rank)))'。 – xiechao 2010-03-15 04:39:42