博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ggplot2--legend图例的修改
阅读量:4162 次
发布时间:2019-05-26

本文共 1903 字,大约阅读时间需要 6 分钟。

> head(msleep)

                        name      genus  vore        order conservation sleep_total sleep_rem sleep_cycle awake brainwt bodywt

                   Cheetah   Acinonyx carni    Carnivora           lc        12.1        NA          NA  11.9      NA  50.000

                Owl monkey      Aotus  omni     Primates                 17.0       1.8          NA   7.0 0.01550   0.480

           Mountain beaver Aplodontia herbi     Rodentia           nt        14.4       2.4          NA   9.6      NA   1.350

4 Greater short-tailed shrew    Blarina  omni Soricomorpha           lc        14.9       2.3   0.1333333   9.1 0.00029   0.019

                       Cow        Bos herbi Artiodactyla domesticated         4.0       0.7   0.6666667  20.0 0.42300 600.000

6                    Three-toed sloth   Bradypus herbi       Pilosa                 14.4       2.2   0.7666667   9.6      NA   3.850

 

p<-

 

   如上图所示,ggplot2中的legend包括四个部分:legend.tittle, legend.text, legend.key, legend.backgroud。针对每一部分有四种处理方式:

element_text()绘制标签和标题,可控制字体的family, face, colour, size, hjust, vjust, angle, lineheight,当改变角度时,序将hjust调整至01.

element_rect()绘制主要供背景使用的矩形,你可以控制颜色的填充(fill)和边界的colour, size, linetype

element_blank()表示空主题,即对元素不分配相应的绘图空间。该函数可以山区我们不感兴趣的绘图元素。使用之前的colour=NAfill=NA,让某些元素不可见,但仍然占绘图空间。

element_get()可得到当前主题的设置。

theme()可在一幅图中对某些元素进行局部性修改,theme_update()可为后面图形的绘制进行全局性的修改。

 

 不加Legend

p+theme(legend.position='none');

删除legend.tittle

 

图例(legend)的位置

图例(legend)的位置和对齐使用的主题设置legend.position来控制,其值可为right,left,top,bottom,none(不加图例,或是一个表示位置的数值。这个数值型位置由legend.justfication给定的相对边角位置表示(取01之间的值),它是一个长度为2的数值型向量:右上角为c(1,1),左下角为c(0,0)

例如:p+theme(legend.position=”left”)

 

修改legend.tittle内容

p+scale_colour_hue("what does it eat?",breaks=c("herbi","carni","omni",NA),labels=c("plants","meat","both","don't know"));

 

修改尺寸大小

p+theme(legend.key.size=unit(2,'cm'));

p+theme(legend.key.width=unit(5,'cm'));

p+theme(legend.text = element_text(colour = 'red', angle = 45, size = 10, hjust = 3, vjust = 3, face = 'bold'))

报错:could not find function "unit"

 解决办法:library(grid)

颜色的修改以及一致性:

library(RColorBrewer);

newpalette<-colorRampPalette(brewer.pal(12,"Set3"))(length(unique(eee$name)));

p+scale_fill_manual(values=newpalette);

p+geom_bar(position="stack",aes(order=desc(name)))

 

参考资料:

转载地址:http://ijixi.baihongyu.com/

你可能感兴趣的文章
HTML5学习之——HTML5 内联 SVG
查看>>
HTML5学习之——HTML 5 服务器发送事件
查看>>
SVG学习之——HTML 页面中的 SVG
查看>>
SVG 形状学习之——SVG 矩形<rect>
查看>>
SVG 形状学习之——SVG圆形
查看>>
SVG 滤镜学习之——SVG 滤镜
查看>>
mysql中用命令行复制表结构的方法
查看>>
hbase shell出现ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException
查看>>
让代码变得更优雅-Lombok
查看>>
解决Rhythmbox乱码
查看>>
豆瓣爱问共享资料插件发布啦
查看>>
Ubuntu10.10 CAJView安装 读取nh\kdh\caj文件 成功
查看>>
kermit的安装和配置
查看>>
vim 配置
查看>>
openocd zylin
查看>>
进程创建时文件系统处理
查看>>
进程创建时信号处理函数处理
查看>>
进程创建时信号处理
查看>>
进程创建时内存描述符处理
查看>>
进程创建时命名空间处理
查看>>