programing

ggplot2 R 그림에서 축의 한계를 설정하는 방법은 무엇입니까?

padding 2023. 6. 12. 21:12
반응형

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)

자세한 내용은 의 설명을 참조하십시오.

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

반응형