2014-03-03 2 views
6

내 플롯의 테두리를 검은 색이 아닌 특정 색으로 만들고 싶습니다. 내가 설정 한 경우 기본 테마 사용) (theme_bw 것을 알 : 나는 확인을 작동하는 것 같다ggplot의 panel.border 문제

theme(panel.border = element_rect(color="darkred", size=0.5, linetype="solid"). 

를 사용하여 원하는 나는 색상에 테두리를 설정할 수 있습니다

theme_set(theme_bw()) 

. 각면의 경계선은면이 음모인지 아니면 단일 음모이든 상관없이 "어두운 색"을 띠고 나머지 음모는 panel.border를 변경하기 전과 동일합니다.

그러나 다른 기본 테마 인 theme_gray() 또는 theme_classic()을 사용하면 테두리가 변경되지만 각 패싯의 내용이 완전히 지워집니다 (완전히 흰색 임).

행동의 차이를 일으키는 원인 또는 해결 방법은 무엇입니까? theme_gray()를 사용하고 각면의 테두리 주위에 얇은 색 선을 넣고 싶습니다.

답변

6

theme()의 도움말 페이지는 패널을 다루기 때문에 panel.borded=This should be used with fill=NA이라고 말합니다.

theme_bw()의 경우 이미 panel.border = element_rect(fill = NA,colour = "grey50")입니다. 따라서 진술을 사용할 때 색만 변경되고 채우기는 NA으로 유지됩니다.

theme_grey()theme_bw()를 들어 당신이 당신의 문을 추가 할 때 이전에이 요소가 빈이었고, rect에 대한 기본값은 (적어도 theme_grey()에 대한) fill="white" 때문에 그렇게 color=fill=이 변경 panel.border = element_blank()있다.

사용

+ theme(panel.border = element_rect(fill=NA,color="darkred", size=0.5, 
            linetype="solid")) 
+0

감사 디드. 아마도 도움말 페이지로 가기 전에 며칠 더 걸렸을 것입니다. 그러나 문제는 완전히 해결되지 않았습니다. ggplot 명령 끝으로 제안을 집어 넣을 때 –

+0

... 올바르게 작동합니다. 하지만 내 테마에 추가하면 아무 것도하지 않습니다. –

+0

나는이 두 번째 문제를 해결했다. 내 테마에서 오타가되었다. 당신의 도움을 주셔서 감사합니다. 매우 감사. –