ggplot2 | 关于标题,坐标轴和图例的细节修改,你可能想了解

简介: ggplot2 | 关于标题,坐标轴和图例的细节修改,你可能想了解



在使用ggplot2初步绘制(ggplot2|详解八大基本绘图要素)出需要展示的图形后,还需要对标题,坐标轴(ggplot2|theme主题设置,详解绘图优化-“精雕细琢”)和legend(ggplot2 |legend参数设置,图形精雕细琢)上的对象进行一系列的设置,包括但不限于名称更改,颜色,大小,位置和角度的调整。


本文针对性的介绍下如何对标题,坐标轴和legend进行修改和设置,算是之前几篇推文的一些补充。


一  载入R包 数据



为方便展示,使用ggplot2内置的iris数据集

library(ggplot2)
p <- ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
  geom_point(aes(color=Species))
p

本文会分别介绍图中红色标记部分的修改和设置方法。


二 标题设置


可以通过labs函数添加图片标题 以及 subtitle ,caption ;而后通过theme来设置字体的大小,颜色,位置和角度等。

注意theme中对应的更改plot.title ,plot.caption 和  plot.subtitle


p1 <- p + labs(title="学习ggplot2可视化",
         subtitle = "熟能生巧",
         caption = "生信补给站") +
  theme(plot.title=element_text(face="bold.italic", #字体
                                color="steelblue", #颜色
                                size=24,  #大小
                                hjust=0.5, #位置
                                vjust=0.5,
                                angle=360), # 角度
        plot.caption=element_text(face="bold",color="blue",size=20))
p1

三 坐标轴设置


3.1 设置坐标轴

使用labs函数 ,其中x y 即为对应的坐标名字;

p2 <- p1 + labs(x="X轴",y = "这是Y轴",title = "生信补给站")
p2

3.2 设置坐标大小,颜色

根据实际情况设置大小,颜色和倾斜角度可以更清晰的展示结果

p2 + theme(axis.title.x=element_text(vjust=1,  
                                    size=20),  # X axis title
          axis.title.y=element_text(size=10,
                                    color = "blue"),  # Y axis title
          axis.text.x=element_text(size=10,
                                   angle = 45,
                                   color = "red",
                                   vjust=.5),  # X axis text
          axis.text.y=element_text(size=10))  # Y axis text


四 图例设置



legend 可以使用guide函数或者scale函数进行修改,这里分别进行一下介绍。


4.1 根据guide修改

p3 <- p2 + guides(color=guide_legend(title = "shape change Legend"))
p3

注意这里使用color=guide_legend ,和aes对应 。


ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
  geom_point(aes(shape=Species))+
  guides(shape=guide_legend(title = "shape change legend"))


4.2 根据scale修改


p4 <- p2 + scale_colour_discrete(name="scale change Legend")
p4

#综合一下
ggplot(iris,aes(x=Sepal.Length,y=Sepal.Width))+
  geom_point(aes(color=Species,shape=Species)) + 
  scale_colour_discrete(name="color legend") +
  guides(shape=guide_legend(title = "shape legend"))


4.3 更改标签名称

4.3.1 使用scale 函数对标签名称进行更改

p5 <- p2 + scale_color_discrete(name="scale change \n Legend",
                          breaks=c("setosa" ,"versicolor","virginica"),
                          labels=c("Species 1", "Species 2", "Species 3")  )
p5

4.3.2 关于legend的其他设置

p5 + theme(legend.title = element_text(size=15, 
                                       color = "firebrick"), 
          legend.text = element_text(size=10),
          legend.key=element_rect(fill='blue'))

关于scale函数的一个简单的“总结”,ggplot2|详解八大基本绘图要素也有简单的介绍。

ggplot2的scale系列函数有很多,命名和用法是有一定规律的。一般使用三个单词用_连接 ,scale_xxx_yyy形式:

其中第二部分的xxx可选为:

colour: 点 线 或者其他图形的框线颜色

fill: 填充颜色 (注意个colour区分)

linetype :线型, 实线 虚线 点线

shape ,size ,alpha : 分别为形状, 大小 和 透明度(某些场景有妙用)


其中第三部分的 yyy 可选为:

manual: 手动设置

discrete: 离散数据

continuous :连续数据

gradient: 颜色梯度

grey: 设置灰度值

相关文章
|
6天前
|
PHP
30 绘制三类图例
路老师在知乎上分享了PHP语言的知识,旨在帮助大家入门并深入理解PHP。本文介绍了如何使用JpGraph库创建柱形图、折线图和3D饼图,包括详细的代码示例和步骤说明。
15 2
|
2月前
echarts中使用散点scatter更改颜色却不生效的问题
本文讨论了在ECharts中使用散点图(scatter)时更改颜色不生效的问题。原因是项目中使用了`visualMap`组件,它具有最高的优先级,导致自定义的颜色设置被覆盖。解决方法是在`visualMap`组件中增加`seriesIndex`属性,指定它只对特定的系列(series)生效,从而避免影响散点图的颜色设置。文章提供了详细的代码示例和解决办法。
62 2
|
6月前
|
搜索推荐 数据可视化 Python
Matplotlib图表中的数据标签与图例设置
【4月更文挑战第17天】这篇文章介绍了如何在Python的Matplotlib库中设置数据标签和图例,以增强图表的可读性和解释性。主要内容包括:使用`text`函数添加基本和自定义数据标签,以及自动和手动创建图例。图例的位置和样式可通过`loc`和相关参数调整。文章强调了数据标签和图例结合使用的重要性,提供了一个综合示例来展示实践方法。良好的图表设计旨在清晰有效地传达信息。
|
JSON 数据格式
Echarts分段折线图图例样式visualMap颜色修改
Echarts分段折线图图例样式visualMap颜色修改
206 1
|
Python
mplfinance设置K线图中红涨绿跌的样式
要设置K线图中红涨绿跌的样式,您可以使用mplfinance库中的marketcolors参数来自定义K线图的颜色。默认情况下,mplfinance会使用红色表示上涨和绿色表示下跌,但您可以根据自己的需求进行修改。
864 1
C# GDI+绘图(四)实现网格绘制,并填充相应的表格内容
C# GDI+绘图(四)实现网格绘制,并填充相应的表格内容
|
数据可视化 数据挖掘
可视化 | Pyecharts象形柱图--图例自定义
可视化 | Pyecharts象形柱图--图例自定义
|
前端开发
Echarts柱状图y轴刻度标签图片和柱状渐变功能实现的解决方案
Echarts柱状图y轴刻度标签图片和柱状渐变功能实现的解决方案
279 0
ECharts给柱状条设置不同的颜色且给坐标轴名设置不同颜色
ECharts给柱状条设置不同的颜色且给坐标轴名设置不同颜色
617 0
ECharts给柱状条设置不同的颜色且给坐标轴名设置不同颜色