2017-11-28 14 views
3

수학 기호를 등고선 레이블에 전달할 수 없습니다. 이것이 가능한가?등고선 레이블에 수학 기호를 추가하는 방법

예 :

image(volcano) 
contour(volcano, level=150, add=TRUE, label = "150") # works 
contour(volcano, level=120, add=TRUE, label = expression(alpha)) # doesn't work 
contour(volcano, level=110, add=TRUE, label = bquote(alpha)) # doesn't work 
text(0.5,0.5, labels = bquote(alpha == .(120))) # works 
text(0.2,0.5, labels = expression(paste(alpha, "= 150"))) # works 
여기

enter image description here

+0

확실하지 않지만 유니 코드를 사용해 보셨습니까? –

답변

3

해결책이다

image(volcano); 
levels <- c(150, 120, 110); 
for (i in 1:length(levels)) { 
    contour(
     volcano, add = TRUE, 
     level = levels[i], 
     label = sprintf("a = %i", levels[i]), 
     vfont = c("sans serif symbol", "plain"), labcex = 1); 
} 

enter image description here

여기서 키 대신 허시 벡터 폰트를 강제 vfont를 사용하는 현재의 폰트 패밀리. 그런 다음 "HersheySansSymbol"글꼴 모음을 사용하여 contour 함수 인수 vfont = c("sans serif symbol", "plain")을 사용하여 "a"를 "α"로 typeset 할 수 있습니다. 조금 숨겨져 있지만 Hershey 글꼴에 대한 자세한 내용은 ?Hershey에서 확인할 수 있습니다.

추신. vfont = c("serif symbol", "bold")과 함께 seriffed 굵은 글꼴을 사용할 수도 있습니다.

+0

우수 - 실제로 숨겨졌습니다. 좀 더 직설적 인 것은 헬라어 심볼에 대한 직접 호출입니다 ('demo (Hershey)'에서 개략적으로 설명 됨) :'contour (volcano, level = 120, add = TRUE, label = paste0 ("\\ * a =", 120), labcex = 1)' –