X軸を独自の値に置き換える


95

コマンドplot()について質問があります。

X軸を完全に削除して独自の値に置き換える方法はありますか?私はすることで軸を取り除くことができることを知っています

plot(x,y, xaxt = 'n')

次に軸を追加します

axis(side = 1 etc.)

ただし、軸を追加しても、明らかにそれはまだ「x」としてプロットされたデータを参照しています。'y'値をプロットし、独自の値を指定してx軸を「描画」するという意味で、独自のx軸を追加したいだけです。それを行う方法はありますか?

この質問の背景は、2つのデータフレームの長さが異なるため、プロットできないことです。


異なる長さのベクトルをプロットしたいですか、それとも自分でxラベルを設定したいですか?例を提供したり、データセットに関する詳細情報を提供したりできますか?
Manoel Galdino

また、2つのデータフレームを組み合わせる方法を確認することもできます。データからより多くのプロットを作成でき、おそらくデータをより有益なものにすることができます。
Sam



回答:


176

それがあなたが何を意味するのかわからないが、これを行うことができます:

plot(1:10, xaxt = "n", xlab='Some Letters')
axis(1, at=1:10, labels=letters[1:10])

それからあなたにグラフを与えます:

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


ティムありがとう!私が探していたものとは異なりますが、私が望んでいたことを実行するのに役立ちました=)
ダニ

5
この場合、xとyは同じ長さです。他の軸の長さがmの場合、どのようにn個のラベルを描画しますか?
Colbert Sesanker、2013

2
参考までに:コマンドのxaxt="n"オプションplotは、x軸のラベル付けを抑制します。このオプションが含まれていない場合はaxis、NOOPになります。
スティーン

これは機能しますが、垂直になるように回転させるにはどうすればよいですか?las = 2は機能しません。
Runningbirds

私は解決策を試しました。xaxt = "n"オプションは、tsクラスの時系列で機能しました。ただし、複数の時系列(mtsクラス)​​の場合は機能しませんでした。
Erdogan CEVHER 2017年

14

ヨも設定することができますlabels = FALSE内側axis(...)とテキストと別のコマンドでラベルを印刷します。このオプションを使用すると、必要に応じてテキストを回転させることができます

lablist<-as.vector(c(1:10))
axis(1, at=seq(1, 10, by=1), labels = FALSE)
text(seq(1, 10, by=1), par("usr")[3] - 0.2, labels = lablist, srt = 45, pos = 1, xpd = TRUE)

詳細はこちら

回転したラベルのある画像


へのリンクdetailed explanation
無効
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.