X 축을 자신의 값으로 바꾸기


95

명령 plot ()에 대한 질문이 있습니다.

x 축을 완전히 제거하고 자신의 값으로 대체하는 방법이 있습니까? 저는 이렇게하면 축을 없앨 수 있다는 것을 압니다.

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

다음으로 축을 추가하십시오.

axis(side = 1 etc.)

그러나 축을 추가 할 때 분명히 'x'로 표시된 데이터를 참조합니다. 'y'값을 플로팅하고 지정된 고유 값으로 x 축을 "그리는"의미에서 x 축을 직접 추가하고 싶습니다. 그렇게 할 방법이 있습니까?

이 질문의 배경은 두 데이터 프레임의 길이가 다르므로 플롯 할 수 없다는 것입니다.


길이가 다른 벡터를 플로팅하거나 x 레이블을 직접 설정하고 싶습니까? 예제를 제공하거나 데이터 세트에 대한 자세한 정보를 제공 할 수 있습니까?
Manoel Galdino 2011 년

두 개의 데이터 프레임을 함께 결합하는 방법을보고 싶을 수도 있습니다. 데이터에서 더 많은 플롯을 만들 수 있고 아마도 데이터를 더 유익하게 만들 수 있습니다.
Sam



답변:


176

그게 무슨 뜻인지 확실하지 않지만 다음과 같이 할 수 있습니다.

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

그러면 그래프가 표시됩니다.

여기에 이미지 설명 입력


감사합니다 Tim! 아니 정확히 내가 찾던하지만 내가 원하는 것을 내 할 일을 도왔다 =)
대니

5
이 경우 x와 y는 길이가 같습니다. 다른 축의 길이가 m 일 때 n 개의 레이블을 어떻게 그리나요?
Colbert Sesanker 2013

2
참조 용 : 명령 의 xaxt="n"옵션 plot은 x 축의 레이블을 억제합니다. 이 옵션이 포함되지 않은 경우 axisNOOP가됩니다.
Steen

작동하지만 수직이되도록 어떻게 회전합니까? las = 2는 작동하지 않습니다.
runningbirds

나는 해결책을 시도했다. xaxt = "n"옵션은 ts-class 시계열에서 작동했습니다. 그러나 다중 시계열 (mts-class)의 경우 작동하지 않았습니다.
Erdogan CEVHER

14

Yo는 텍스트를 사용하여 별도의 명령으로 레이블을 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가 죽었습니다
javadba
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.