Programming

ggplot2 R 플롯에서 축 제한을 설정하는 방법은 무엇입니까?

procodes 2020. 3. 5. 08:04
반응형

ggplot2 R 플롯에서 축 제한을 설정하는 방법은 무엇입니까?


나는 다음을 계획한다.

library(ggplot2)    

carrots <- data.frame(length = rnorm(500000, 10000, 10000))
cukes <- data.frame(length = rnorm(50000, 10000, 20000))
carrots$veg <- 'carrot'
cukes$veg <- 'cuke'
vegLengths <- rbind(carrots, cukes)

ggplot(vegLengths, aes(length, fill = veg)) +
 geom_density(alpha = 0.2)

이제 전체 범위 대신 x=-5000~ 사이의 영역 만 플롯하고 싶다고 가정 해보십시오 5000.

어떻게해야합니까?


기본적으로 두 가지 옵션이 있습니다

scale_x_continuous(limits = c(-5000, 5000))

또는

coord_cartesian(xlim = c(-5000, 5000)) 

첫 번째는 주어진 범위 밖의 모든 데이터 포인트를 제거하고 두 번째는 가시 영역 만 조정합니다. 대부분의 경우 차이가 보이지 않지만 데이터에 적합하면 적합치가 변경 될 수 있습니다.

축약 함수 xlim(또는 ylim)를 사용할 수도 있습니다. 첫 번째 옵션과 같이 지정된 범위 밖의 데이터 포인트를 제거합니다.

+ xlim(-5000, 5000)

자세한 내용은의 설명을 확인하십시오 coord_cartesian.

RStudio의 쪽지 를위한 ggplot2차종은 매우 시각적으로 취소이. 해당 치트 시트의 작은 섹션은 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

CC BY로 배포됩니다 .


빠른 참고 : coord_flip()x 및 y 축을 뒤집기 위해 사용 하는 경우이 coord_cartesian()두 기능이 독점적이기 때문에 범위 제한을 설정할 수 없습니다 ( 여기 참조 ).

다행히도 이것은 쉬운 수정입니다. 다음 coord_flip()과 같이 한계를 설정하십시오 .

p + coord_flip(ylim = c(3,5), xlim = c(100, 400))

이것은 가시 범위를 변경합니다 (즉, 데이터 포인트를 제거하지 않습니다).

참고 URL : https://stackoverflow.com/questions/3606697/how-to-set-limits-for-axes-in-ggplot2-r-plots

반응형