【问题标题】:plot lines using qplot使用 qplot 绘制线条
【发布时间】:2011-06-19 04:35:14
【问题描述】:

我想使用 ggplot2 包中的 qplot 在示例图上绘制多条线。 但我遇到了一些问题。

使用旧的绘图和线条函数我会做类似的事情

m<-cbind(1:4,5:8,-(5:8))
colnames(m)<-c("time","y1","y2")
m<-as.data.frame(m)
> m
  time y1 y2
1    1  5 -5
2    2  6 -6
3    3  7 -7
4    4  8 -8
plot(x=m$time,y=m$y1,type='l',ylim=range(m[,-1]))
lines(x=m$time,y=m$y2)

谢谢

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    使用reshape包到meltm:

    library(reshape)
    library(ggplot2)
    
    m2 <- melt(m, id = "time")
    p <- ggplot(m2, aes(x = time, y = value, color = variable))
    p + geom_line() + ylab("y")
    

    您可以根据自己的喜好重命名新 data.frame 中的列。这里的诀窍是有一个因子来表示您要绘制的每条线。

    【讨论】:

    • 谢谢,它现在可以工作了,我不太了解 aes 功能,但我暂时不会担心。
    • qplot(time, value, data = m2, colour = variable, geom = "line") + ylab("y")qplot 语法的翻译。
    • 在线文档 (had.co.nz/ggplot2) 有大量示例,包括如何设置 aes 语句。
    猜你喜欢
    • 2018-02-22
    • 2021-04-21
    • 1970-01-01
    • 2011-02-26
    • 2017-09-28
    • 2015-11-01
    • 2013-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多