2017-12-04 4 views
0

xaxis 레이블에 < =을 올바르게 표시하려고합니다. 이전 게시물을 expression으로 보았습니다. 이 두 가지 예에서 명시 적으로 (수동으로) 수행 된 레이블은 단 하나뿐입니다. 내 경우에는 < =이라는 레이블이 여러 개 있습니다. 나는 파일에서 요소 레이블을 읽었습니다.은 ggplot2 축 레이블에서 같음보다 작음

faclab <- "value,label 
1,<= 1 
2,1 < ... <= 2 
3,2< ... <= 3 
4,>3" 
labels.dt <- fread(faclab) 

data <- data.table(value=sample(labels.dt[['value']],100,replace=TRUE)) 

ggplot(data, aes(factor(value))) + geom_bar(aes(y=(..count..)/sum(..count..))) + 
    scale_x_discrete(breaks=labels.dt[['value']], labels=labels.dt[['label']]) 

답변

1

적절한 유니 코드 문자 "\u2264" ("≤")와 "<=" 바꾸기 예 :

stringi::stri_replace_all_fixed(
    c("<= 1", ">= 2"), 
    c("<=", ">="), 
    c("\u2264", "\u2265"), 
    vectorize_all = F 
) 
# [1] "≤ 1" "≥ 2" 

:

library(tidyverse) 
library(data.table) 
faclab <- "value,label 
1,<= 1 
2,1 < ... <= 2 
3,2< ... <= 3 
4,>3" 
labels.dt <- fread(faclab) 
data <- data.table(value=sample(labels.dt[['value']],100,replace=TRUE)) 
ggplot(data, aes(factor(value))) + geom_bar(aes(y=(..count..)/sum(..count..))) + 
    scale_x_discrete(
    breaks=labels.dt[['value']], 
    labels=stringi::stri_replace_all_fixed(labels.dt[['label']], "<=", "\u2264") 
) 

enter image description here