ggplot2-主题2

修改主题组件

如果想修改单个主题组件,需要使用形如如plot_theme(element.name = element_function())的代码

内置元素函数有4种基本类型:文字(text)、线条(line)、矩形(rectangle)、空白(blank)。每个元素函数都有一系列控制外观的参数

  • element_text()绘制标签和标题。可以控制字体的family(字体族)、face(字型)、color(颜色)、size(大小,单位是“磅”)、hjust(横向对齐)、vjust(竖向对齐)、angle(角度,单位是“角度”而不是“弧度”)、lineheight(行高,与fontcase的比例)。可查阅viegnette(“ggplot2-specs”)获得更多的参数细节
base_t <- base +
	labs(title = "This is a ggplot") + xlab(NULL) + ylab(NULL)
base_t + theme(plot.title = element_text(size = 16))
base_t + theme(plot.title = element_text(face = "bold", color = "red"))
base_t + theme(plot.title = element_text(hjust = 1))

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

margin参数和margin()函数可用于控制字体周围的边距。mergin()有四个参数:文字上边(top)、右边(right)、下边(bottom)、左边(left)的空白大小(多少磅)。没有设置的元素默认值为0

# 这里的边距看起来不对称,这是因为图像本身也有边距
base_t + theme(plot.title = element_text(margin = margin()))
base_t + theme(plot.title = element_text(margin = margin(t = 10, b = 10)))
base_t + theme(axis.title.y = element_text(margin = margin(r = 10)))

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • element_line()绘制线条,线条的参数有color(颜色)、size(大小)和linetype(线条类型)
base + theme(panel.grid.major = element_line(color = "black"))
base + theme(panel.grid.major = element_line(size = 2))
base + theme(panel.grid.major = element_line(linetype = "dotted"))

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • element_rect()绘制矩形。这主要用于绘制背景,参数有fill(填充)的颜色、边缘的color(颜色)、size(大小)、linetype(线条类型)
base + theme(plot.background = element_rect(fill = "grey80", color = NA))
base + theme(plot.background = element_rect(color = "red", size = 2))
base + theme(panel.background = element_rect(fill = "linen"))

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • element_blank()不绘制任何东西。如果不想绘制任何东西,而且没有分配给哪个元素的空间的话,可以使用此函数。以下例子使用element_blank()来逐步消除不感兴趣的元素。请留意图像是如何自动回收这些元素之前所用的空间的;如果不想要这种效果(或许是因为它们需要对齐页面的其它图像),可用color = NA, fill = NA来创建不可见元素来占用那些空间
  • 一些其它的参数用于设定网格单位。例如unit(1, “cm”)或unit(0.25, “in”)

使用theme_update()来修改所有的未来生成的图像。它输出之前的主题设定值,因此可以在完成工作后很容易地恢复原来的参数

old_theme <- theme_update(
	plot.background = element_rect(fill = "lightblue3", color = NA),
	panel.background = element_rect(fill = "lightblue", color = NA),
	axis.text = element_text(color = "linen"),
	axie.title = element_text(color = "linen"))
base
theme_set(old_theme)
base
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值