2013-06-27 46 views
1

我使用ggplot用於繪製一些圖表,並在創造突破一些問題(標籤往往過於「密集」和套印) 這裏是我使用ggplot標籤覆蓋與斷裂

a <- ggplot(length, aes(DistancetoTSS, fill = H3K4me1)) + 
    geom_density(alpha = 0.2) 
a + scale_x_continuous(breaks=c(-600000,-400000,-200000,0,200000,400000,600000), 
         labels=c("-600","-400","-200","0","200","400","600")) 

代碼image

我怎樣才能獲得他們之間的空間?

回答

1

您需要決定您希望x軸啓動和停止的位置。將軸限制在有標籤的位置是有意義的。

a + scale_x_continuous(breaks=c(-600000,-400000,-200000,0,200000,400000,600000), 
         labels=c("-600","-400","-200","0","200","400","600"), 
         limits = c(-600000, 600000)) 

如果你想你的x軸覆蓋它目前的範圍,那麼你需要改變你的標籤,或讓你的情節巨大,使它們間隔:你可以用limits說法scale_x_continuous()做到這一點進一步。

比較:

​​

enter image description here

ggplot(dat, aes(x)) + geom_density() + 
    scale_x_continuous(breaks = seq(-3, 3), limits = c(-3, 3)) 

enter image description here

+2

...或者'coord_cartesian'如果要保留所有的數據_fitting_密度,但只顯示一個片段的。 – joran

+0

@joran - 非常好的點 – alexwhan

+0

謝謝@alexwhan – abh