2

log2(n+1)x軸のラベルが1、2、4、16などに対応するようにx軸をフォーマットしたいと思います。

入力:

x <- c(1, 2, 3, 11, 15)
y <- c(1.1, 1.2, .4, 2.1, 1.5)

plot(log2(x + 1), y, axes=FALSE)
axis(1, at=(labels=as.character(formatC(x))), cex.axis=0.9)

しかし、私が取得したプロットには、元のx軸の値が残っています。

ここに画像の説明を入力してください

x軸の累乗を2(1、2、4、16など)にするにはどうすればよいですか?

4

1 に答える 1

4

私はこれがあなたが望むものだと思います。

x<-c(1,2,3,11,15) 
y<-c(1.1,1.2,.4,2.1,1.5)
lab<-c(1,2,4,16)
plot(log2(x+1),y,xaxt="n",xlab="x")
axis(1,at=log2(lab+1),labels=lab)

等間隔のラベルを計算することも役立つ場合があります。

lab<-round(2^seq(min(log2(x+1)),max(log2(x+1)),length.out=4)-1)
于 2012-08-15T04:19:45.873 に答える