Несколько осей / шкал на XY-графике в R - PullRequest
2 голосов
/ 06 февраля 2012

Как можно построить вторую линию на XY-графике, используя plot (), в другом масштабе, как в этом примере (фиолетовая линия)?

enter image description here

My Rкод для первой (красной) строки выглядит примерно так:

p <- sqlQuery(ch,"SELECT wl,param1 FROM qryPlot ORDER BY wl")
plot(p$wl,p$param1,axes=T,xlim=c(400,800),ylim=c(0,100),type="l",col="red")

Ответы [ 2 ]

9 голосов
/ 06 февраля 2012

Вот общая идея:

plot(1:10)
par(new=T)
plot(1:10, rep(50, 10), type='l', axes=F, xlab=NA, ylab=NA)
axis(4)

enter image description here

1 голос
/ 08 февраля 2012

Я немного расширил ответ @johncolby следующим образом:

x<-1:20
y1<-sqrt(x)
y2<-sqrt(x)*x
plot(x,y1,ylim=c(0,25),col="blue")
par(new=TRUE)
plot(x,y2,ylim=c(0,100),col="red",axes=FALSE)
axis(4)

(axes=FALSE во второй команде plot () = для предотвращения печати второй оси надписей на левой стороне)

С этим результатом:

enter image description here

Небольшая проблема, которую нужно решить: надписи на обеих осях Y напечатаны на левой стороне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...