2016-10-19 2 views
1

다음 최소 예제는이 문제를 사소한 정도로 재현합니다 ... 데이터가 쌓이는 양에 따라 왜곡이 발생한다는 것을 알았지 만 쌓인 데이터가없는 경우 앨리어싱/왜곡이 없습니다. y 축 틱 텍스트는 x 축 틱 텍스트에만 영향을주지 않습니다. X 축 틱 텍스트 간의 색상/굵기 차이도 매우 눈에.니다.geom_bar는 앨리어스/왜곡 된 x 축 틱 텍스트를 생성합니다.

library(ggplot2) 

x <- c(1111, 2222, 3333, 1111, 1111, 3333, 3333, 1111, 3333, 1111, 2222, 1111, 3333, 1111, 1111) 
y <- c(11, 12, 13, 12, 13, 12, 13, 12, 13, 12, 13, 12, 13, 12, 13) 
z <- c('a', 'b', 'c', 'a', 'b', 'a', 'b', 'c', 'a', 'a', 'b', 'c', 'a', 'c', 'a') 
df <- data.frame(x, y, z) 

g <- ggplot(data=df, aes(x, y, fill=z)) + 
    geom_bar(stat="identity") + scale_x_continuous(breaks=df$x) 
g 
난 후 3333 개 축이 다소 왜곡 된 1111 및 2222에 비해 눈에 띄게 어두운/별칭을 얻을

:

aliased/distorted 3333

플롯을 프로세스를 게시하고이 문제를 해결하는 방법이 있나요?

library(extrafont) 
ggsave(filename='myplot.pdf', plot=g) 
embed_fonts('myplot.pdf') 

UPDATE :

내가 성공하지 않고 시도 나는 왜곡이 사라 breaks=df$x 다음 scale_x_continuous(breaks=df$x)에서 제거하면 ...하지만 난 항상 모든 표시되지 않습니다 그렇지 않으면 휴식이 필요 X를 축 진드기가 필요해.

이 문제를 해결하고 왜곡없이 모든 휴식을 유지하는 방법에 대한 아이디어가 있으십니까?

+0

왜곡이 PDF에도 있습니다 ... –

답변

2

휴식 시간은 데이터에 나타날 때마다 서로 위에서 올라가고 있습니다. 이것은 당신이 보는 "왜곡"을 만듭니다. df$x 대신에 unique(df$x)을 사용하여 쉽게 해결할 수 있습니다.

+0

와우 좋은! 고맙습니다! 나는 그것을 보지 않았다 :) –