facet_grid 전체의 스트립 텍스트를 어떻게 조작 할 수 있습니까?
패싯 가격에서 스트립 텍스트의 크기를 어떻게 조작 할 수 있는지 궁금합니다. 내 질문은 줄거리 제목에 대한 질문 과 인터뷰 하지만 특히 줄거리 제목이 아니라 패싯 제목 (strip_h) 관심에 텍스트를 조작하는 데 있습니다.
예를 들어 mpg 데이터 세트를 고려하십시오.
library(ggplot2)
qplot(hwy, cty, data = mpg) + facet_grid( . ~ manufacturer)
결과 출력 은 스트립에 맞지 않는 일부 패싯 제목을 생성합니다.
grid
스트립 텍스트를 처리 하는 데 사용할 방법이 있습니다. 그러나 나는 여전히 초보자이고 해들리 책의grid
에 있는 부록에서 정확히 어떻게 해야하는지 확신하지 못했습니다 . 또한 모든 기술이 The Force를 통해 연결되어있어 믿기 때문에 잘못하면 많이가 깨질까 두려웠습니다.
미리 감사드립니다.
예를 들어를 사용하여 수정 strip.text.x
(또는 strip.text.y
) 할 수 있습니다.theme_text()
qplot(hwy, cty, data = mpg) +
facet_grid(. ~ manufacturer) +
opts(strip.text.x = theme_text(size = 8, colour = "red", angle = 90))
업데이트 : ggplot2 버전> 0.9.1
qplot(hwy, cty, data = mpg) +
facet_grid(. ~ manufacturer) +
theme(strip.text.x = element_text(size = 8, colour = "red", angle = 90))
요즘 opts
및 의 사용은 theme_text
더 이상 사용되지 않는을 구석으로 같습니다. R은 theme
및 element_text
. 답변에 대한 해결책은 여기에서 당신 수 있습니다 : http://wiki.stdout.org/rcookbook/Graphs/Facets%20%28ggplot2%29/#modifying-facet-label-text
qplot(hwy, cty, data = mpg) +
facet_grid(. ~ manufacturer) +
theme(strip.text.x = element_text(size = 8, colour = "red", angle = 90))
mpg
회전 각도와 글꼴 크기 를 변경 하는 예에서는 괜찮은 것 같지만, 많은 경우에 상당히 긴 레이블이있는 변수를 발견 할 수 있습니다. .
따라서 각도와 크기를 변경하는 것 (또는 보완)은 일반적으로 facet_grid
의미있는 방식으로 사용할 수있을 때마다 정의하는 요소의 레이블을 다시 포맷합니다 .
일반적으로 dataset$variable
다음과 같은 많은 이있는 경우
c("median_something", "aggregated_average_x","error","something_else")
나는 포함한다 :
reformat <– function(x,lab="\n"){ sapply(x, function(c){ paste(unlist(strsplit(as.character(c) , split="_")),collapse=lab) }) }
[아마도 더 나은 정의가 reformat
오른 쪽이 작동합니다.]
dataset$variable <- factor(dataset$variable, labels=reformat(dataset$variable, lab='\n')
패싯시 모든 레이블은 매우 읽기 쉽습니다.
ggplot(data=dataset, aes(x,y)) + geom_point() + facet_grid(. ~ variable)
참고 URL : https://stackoverflow.com/questions/2751065/how-can-i-manipulate-the-strip-text-of-facet-grid-plots
'ProgramingTip' 카테고리의 다른 글
표준 라이브러리를 사용하여 Go에서 중첩 된 템플릿을 있습니까? (0) | 2020.10.05 |
---|---|
C #의 공변 및 반 변성 인터페이스 이해 (0) | 2020.10.05 |
Matplotlib로 플로팅하는 것이 왜 그렇게 느린가요? (0) | 2020.10.05 |
AngularJS에서 인라인 템플릿 사용 (0) | 2020.10.05 |
왜 git은 "최적의 성능을 위해 백그라운드에서 저장소 자동 포장"이라고 계속 말하고 있습니까? (0) | 2020.10.05 |