ggplot2-theme(主题)

简介: ggplot2-theme(主题)

gglpot2的主题可以设置一些字体、颜色、背景色、网格线等东西。

概括的说元素函数主要有四种:element_text(文本)element_lines(线条)element_rect(矩形块)element_blank(主题), 方式总体为 theme(主题元素=函数(参数))

简单示例:

x<-c(2015,2016,2017,2018,2019,2020)
y<-c(12,13,14,25,36,57)
test<-data.frame(Year=x,Num=y)
p_theme <- ggplot(data = test, mapping = aes(x = Year, y = Num)) +geom_line(colour = 'blue', size = 1) + geom_point(colour = 'red', size = 2)
p_theme

image.png

.对整体背景进行改变(rect 或者 blank)

theme(plot.background=element_rect(fill=,color=, size=, linetype=, ))#依次为填充色,轮廓色,边界大小,边界线条类型(dotted,dotdash,dashed,solid...) #
p_theme+labs(title="小白学R",subtitle = "学不会",caption = "坚持")+
theme(plot.background=element_rect(fill='grey',color='red', size=2,  linetype='dotdash'))

.对标题进行改变(text)

theme(plot.title=element_text(face=,color=,size=, hjust=,vjust=, angle=,lineheight=))#依次是字体类型 ("plain", "italic","bold", "bold.italic"),颜色,大小,水平位置(0到1),垂直位置(0到1),逆时针旋转(0到360),线高度

#对标题、X轴进行设置

p_theme+labs(title="小白学R",subtitle = "学不会",caption = "坚持")+
theme(plot.title=element_text(face="bold.italic",color="steelblue",size=24, hjust=0.5,vjust=0.5,angle=360,lineheight=113), ##对标题进行改变
axis.title.x=element_text(face="italic",color="#FFAEB9",size=16,
hjust=0.5,vjust=0.5, angle=45,lineheight=113), ##对x轴的坐标轴名称进行改动
axis.text.x=element_text(face="bold",color="red",size=16,
hjust=0.5,vjust=0.5, angle=90,lineheight=113), ##对x轴的坐标轴刻度值进行改动
axis.ticks.x=element_line(color='skyblue',size=9,lineend='round'), ##对x轴的刻度点类型进行改动
axis.line.x=element_line(color='yellow',size=6,lineend='butt')) ##对x轴的刻度线进行改动 lineend(round,butt,square)

image.png

. 面板背景色及网格线设置


//

p_theme+labs(title="小白学R",subtitle = "学不会",caption = "坚持")+
theme(panel.grid.major=element_line(color='skyblue',size=2,linetype=NULL,lineend='butt'))+
theme(panel.grid.minor=element_line(color='grey50'))+   #改变主次网格线颜色线型大小等
theme(panel.grid.major.x=element_blank(),panel.grid.minor.x=element_blank())+#同时隐藏与x坐标轴相交的主次网格线
theme(panel.grid=element_blank())+ #隐藏网格线(等价于同时隐藏主次网格线)
theme(panel.background=element_rect(fill='grey'))  #面板背景色

image.png

.总体调整

theme(rect=element_rect()) #矩形属性
theme(line=element_line()) #线性属性
theme(text=element_text()) #文本属性
theme(title=element_title()) #标题属性
Ⅴ.ggplot2的两个主题
theme_grey() 、theme_bw()
Ⅵ.ggthemes包的十个主题
theme_economist() 、theme_economist_white() 、theme_wsj() 、theme_excel() 、theme_few() 、theme_foundation() 、theme_igray() 、theme_solarized() 、theme_stata() 、theme_tufte()

12个主题可以自己画出来看一下,是否适合自己的绘图目的和风格。当然有了自己的审美之后,可以自定义theme,然后绘图时候进行调用。



另:theme同样可以根据自己需要的在上述的“+”前后选择合适的调整进行组合,未完待续。。。


相关文章
|
Oracle 关系型数据库 MySQL
第四章:OceanBase集群技术架构(分布式事务、MVCC、事务隔离级别)
第四章:OceanBase集群技术架构(分布式事务、MVCC、事务隔离级别)
702 0
|
数据安全/隐私保护 Windows
svn篇1:svn下载安装
svn篇1:svn下载安装
698 0
|
数据可视化
R语言自定义图形:ggplot2中的主题与标签设置
【8月更文挑战第30天】`ggplot2`作为R语言中功能强大的绘图包,其自定义能力让数据可视化变得更加灵活和多样。通过合理使用`theme()`函数和`labs()`函数,以及`geom_text()`和`geom_label()`等几何对象,我们可以轻松创建出既美观又富有表达力的图形。希望本文的介绍能够帮助你更好地掌握`ggplot2`中的主题与标签设置技巧。
|
JavaScript API
Vue2 中使用Swiper构建中间大两边小轮播效果
【10月更文挑战第8天】
1724 122
|
9月前
|
缓存 Java 应用服务中间件
java语言后台管理若依框架-登录提示404-接口异常-系统接口404异常如何处理-登录验证码不显示prod-api/captchaImage 404 (Not Found) 如何处理-解决方案优雅草卓伊凡
java语言后台管理若依框架-登录提示404-接口异常-系统接口404异常如何处理-登录验证码不显示prod-api/captchaImage 404 (Not Found) 如何处理-解决方案优雅草卓伊凡
1771 5
|
网络协议 安全 网络安全
解析IPv6报文结构
【7月更文挑战第1天】IPv6报文结构包括基本头和可选的扩展头,基本头固定40字节,含8个字段,不支持分片,提升了处理效率。扩展头灵活处理选项,长度为8字节的倍数,可包含如路由、分片、认证和安全封装等信息。多个扩展头按特定顺序排列,目的选项头可出现两次。
|
机器学习/深度学习 并行计算 计算机视觉
CUDA:王者之巅——探究CUDA为何能成为并行计算的佼佼者
本文探讨了CUDA在并行计算领域的崛起及其成为佼佼者的原因,详细介绍了CUDA的技术背景、架构原理及在深度学习、图像处理等领域的应用案例,展示了其显著的性能优势与优化方法,并展望了CUDA在未来计算技术发展中的潜力与方向。
三大抽样分布——卡方分布、t分布、F分布
三大抽样分布——卡方分布、t分布、F分布
|
数据采集 机器学习/深度学习 存储
性能调优指南:针对 DataLoader 的高级配置与优化
【8月更文第29天】在深度学习项目中,数据加载和预处理通常是瓶颈之一,特别是在处理大规模数据集时。PyTorch 的 `DataLoader` 提供了丰富的功能来加速这一过程,但默认设置往往不能满足所有场景下的最优性能。本文将介绍如何对 `DataLoader` 进行高级配置和优化,以提高数据加载速度,从而加快整体训练流程。
2171 0
下一篇
oss云网关配置