2016-09-02 8 views
3

ggplotにおけるggrepelの包含を形作ります。ggplot色凡例形状は凡例で面白い形状につながる英数字混合し

Q:これを通常の形状に置き換えるにはどうすればよいですか?

サンプルコード:

data(mtcars) 
library(ggplot2) 
library(ggrepel) 

ggplot(mtcars, aes(x = mpg, y = wt, color = factor(vs), size = factor(cyl))) + 
    geom_point() + 
    geom_text_repel(aes(label = rownames(mtcars)), size = 5) 

のSessionInfo:

R version 3.2.3 (2015-12-10) 
Platform: x86_64-pc-linux-gnu (64-bit) 
Running under: Ubuntu 16.04.1 LTS 

locale: 
    [1] LC_CTYPE=en_US.UTF-8  LC_NUMERIC=C    LC_TIME=nl_NL.UTF-8  LC_COLLATE=en_US.UTF-8  LC_MONETARY=nl_NL.UTF-8 LC_MESSAGES=en_US.UTF-8 LC_PAPER=nl_NL.UTF-8  
[8] LC_NAME=C     LC_ADDRESS=C    LC_TELEPHONE=C    LC_MEASUREMENT=nl_NL.UTF-8 LC_IDENTIFICATION=C  

attached base packages: 
    [1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
    [1] magrittr_1.5  ggrepel_0.5  ggplot2_2.1.0.9000 

loaded via a namespace (and not attached): 
    [1] labeling_0.3  colorspace_1.2-6 scales_0.4.0  assertthat_0.1 plyr_1.8.4  rsconnect_0.4.3 tools_3.2.3  gtable_0.2.0  tibble_1.1  Rcpp_0.12.6  grid_3.2.3  digest_0.6.10 
[13] munsell_0.4.3 

答えて

2

ggrepelはshow.legend引数を持っているので、私たちは以下のようshow.legend = FALSEが必要になります。

論理show.legend
。この層を伝説に含めるべきか? デフォルトは、任意の美学がマップされている場合を含みます。 FALSEは決して を含み、TRUEは常に含まれます。サイドノートとして

ggplot(mtcars, aes(x = mpg, y = wt, color = factor(vs), size = factor(cyl))) + 
    geom_point() + 
    geom_text_repel(aes(label = rownames(mtcars)), size = 5, show.legend = FALSE) 

、明確にするためにggplot外のデータを準備する:

#fix the data 
plotDat <- mtcars 
plotDat$vs <- as.factor(plotDat$vs) 
plotDat$cyl <- as.numeric(as.factor(plotDat$cyl)) 
plotDat$myLabel <- rownames(plotDat) 

#then plot 
ggplot(plotDat, aes(x = mpg, y = wt, 
        color = vs, size = cyl, 
        label = myLabel)) + 
    geom_point() + 
    geom_text_repel(size = 5, show.legend = FALSE) 

enter image description here

関連する問題