0

R を使用して、同じグラフに 2 つの曲線をプロットする必要があります。したがって、x1 対 y1 および x2 対 y2 をプロットする必要があります。ここで、「x1」は乱数ですが、0 から 12 の範囲の既知の数値です。「x2」はランダムですが、0 から 9 の範囲の既知の数値です。同様に、y1 と y2 の他のいくつかの既知の範囲。

次のコードを使用しました。

d<-read.csv("ni1.csv")       # Reading in the data
x1<-d[,1]
y1<-d[,2]

d2<-read.csv("ni2.csv")
x2<-d2[,1]
y2<-d2[,2]

plot(x1,y1,pch="*", col='blue',xlim=c(0, 12), ylim=c(0,1300),main='Load Vs. Extension   Curves',xlab='Extension', ylab='Load')
par(new=TRUE)
plot(x2, y2, pch="*", col= 'red',xlim=c(0, 9), ylim=c(0,1400), axes= FALSE, xlab='', ylab='' )

問題は、x1 対 y1 の正しい曲線を取得していますが、x2 対 y2 の曲線が不適切な範囲にあることです。つまり、x2 対 y2 の x 範囲は、プロット用に持っている値の外側に出てきています。

誰でもこれを解決するのを助けることができますか? ご支援ありがとうございました...

よろしく。

4

3 に答える 3

4

もう 1 つの方法は、単純にpar(new=TRUE)2 つの異なるプロットを重ね合わせる方法です。

vv <- ts(c(3875, 4846, 5128, 5773, 7327,
                6688, 5582, 3473, 3186,
                 rep(NA, 51))
plot(drunkenness, lwd=3, col="grey", ann=FALSE, las=2)
par(new=TRUE)
plot(nhtemp, ann=FALSE, axes=FALSE,col='blue')

ここに画像の説明を入力

于 2013-02-12T13:26:44.450 に答える
3

points代わりに使用することを検討してください。を次のものに置き換えますplot(x2, y2, ...)

points(x2, y2, pch="*", col= 'red')
于 2013-02-12T09:07:51.147 に答える
1

ggplot2 パッケージを使用できますが、その場合、カテゴリを指定する追加の列を使用して、データを 1 つのデータフレームに並べ替える必要があります。

library(ggplot2)
d <- read.csv('ni1.csv',header=T)
d2 <- read.cv('ni2.csv',header=T)
#assuming header names are ´x´ and ´y´ 
df <- rbind(d,d2)
df$labels[(length(d[,1])+1):length(df[,1])] <- 'ni2'
df$labels[1:length(d[,1])] <- 'ni1'
qplot(x,y,data=df,geom='line') + facet_wrap(~labels)
于 2013-02-12T09:25:30.643 に答える