facet_wrap 레이블을 완전히 제거하십시오.
청중의 경우 레이블이 무관하기 때문에 일종의 스파크 라인 효과 를 만들기 위해 패싯의 레이블을 완전히 제거하고 싶습니다 .
library(MASS)
library(ggplot2)
qplot(week,y,data=bacteria,group=ID, geom=c('point','line'), xlab='', ylab='') +
facet_wrap(~ID) +
theme(strip.text.x = element_text(size=0))
그렇다면 "스파크 라인"을위한 더 많은 공간을 허용하기 위해 (지금은 비어있는) strip.background를 완전히 제거 할 수 있습니까?
아니면 이와 같은 많은 바이너리 값 시계열에 대해이 " 스파크 라인 "효과 를 얻는 더 좋은 방법 이 있습니까?
ggplot v2.1.0 이상의 경우을 사용 element_blank()
하여 원하지 않는 요소를 제거하십시오.
library(MASS) # To get the data
library(ggplot2)
qplot(
week,
y,
data = bacteria,
group = ID,
geom = c('point', 'line'),
xlab = '',
ylab = ''
) +
facet_wrap(~ ID) +
theme(
strip.background = element_blank(),
strip.text.x = element_blank()
)
이 경우 제거하려는 요소는라고 strip
합니다.
ggplot grob 레이아웃을 사용하는 대안
이전 버전 ggplot
(v2.1.0 이전)에서는 스트립 텍스트가 gtable 레이아웃의 행을 차지합니다.
element_blank
removes the text and the background, but it does not remove the space that the row occupied.
This code removes those rows from the layout:
library(ggplot2)
library(grid)
p <- qplot(
week,
y,
data = bacteria,
group = ID,
geom = c('point', 'line'),
xlab = '',
ylab = ''
) +
facet_wrap(~ ID)
# Get the ggplot grob
gt <- ggplotGrob(p)
# Locate the tops of the plot panels
panels <- grep("panel", gt$layout$name)
top <- unique(gt$layout$t[panels])
# Remove the rows immediately above the plot panel
gt = gt[-(top-1), ]
# Draw it
grid.newpage()
grid.draw(gt)
I'm using ggplot2 version 1 and the commands required have changed. Instead of
ggplot() ... +
opts(strip.background = theme_blank(), strip.text.x = theme_blank())
you now use
ggplot() ... +
theme(strip.background = element_blank(), strip.text = element_blank())
For more detail see http://docs.ggplot2.org/current/theme.html
As near as I can tell, Sandy's answer is correct but I think it's worth mentioning that there seems to be a small difference the width of a plot with no facets and the width of a plot with the facets removed.
It isn't obvious unless you're looking for it but, if you stack plots using the viewport layouts that Wickham recommends in his book, the difference becomes apparent.
Sandy의 업데이트 된 답변은 좋아 보이지만 ggplot 업데이트로 인해 쓸모 없게 될 수 있습니까? 내가 말할 수있는 코드 (Sandy의 원래 답변의 단순화 된 버전)는 여분의 공간없이 Sean의 원래 그래프를 재현합니다.
library(ggplot2)
library(grid)
qplot(week,y,data=bacteria,group=ID, geom=c('point','line'), xlab='', ylab='') +
facet_wrap(~ID) +
theme(strip.text.x = element_blank())
ggplot 2.0.0을 사용하고 있습니다.
참고 URL : https://stackoverflow.com/questions/10547487/remove-facet-wrap-labels-completely
'IT Share you' 카테고리의 다른 글
Python의 클래스 개체에서 새 인스턴스를 만드는 방법 (0) | 2020.12.07 |
---|---|
트위터 부트 스트랩을 만드는 방법 (0) | 2020.12.07 |
인증 된 CORS 요청의 프리 플라이트 OPTIONS 요청이 Chrome에서는 작동하지만 Firefox에서는 작동하지 않는 이유는 무엇입니까? (0) | 2020.12.07 |
문자열을 JSON 객체 PHP로 변환 (0) | 2020.12.07 |
chart.js (chartjs.org)의 모든 차트 유형에 레이블 / 범례를 추가하려면 어떻게해야합니까? (0) | 2020.12.07 |