此博客作为自己的学习笔记,同时与大家交流分享!
Toolbox
首先我们来明确一下使用图层的目的是什么
- 显示数据(data):绘图时的最底层(数据层),显示数据有助于我们改进模型;
- 显示数据的统计摘要(statistical summary):在数据背景下展示模型的统计预测效果,模型层通常绘制在数据层之上,有助于揭示我们可能错过的数据的细微之处;
- 添加其他元数据(metadata):上下文、注释和引用。
1.基本绘图类型(Basic Plot Types)
几何对象是 ggplot2 的基本构建基块。它们本身很有用,也用于构造更复杂的图层。每个几何对象是二维的,需要 x 和 y 两个属性。
下面展示一些几何对象:散点图、含标签的散点图、条形图、色深图、线条图、面积图、路径图和多边形图,ggtitle()
函数是给图片添加标题。
df <- data.frame(
x = c(3, 1, 5),
y = c(2, 4, 6),
label = c("a","b","c")
) #建立数据集
p <- ggplot(df, aes(x, y, label = label)) +
labs(x = NULL, y = NULL) + # 隐藏坐标标签
theme(plot.title = element_text(size = 12)) #缩小绘图标题
p + geom_point() + ggtitle("point")
p + geom_text() + ggtitle("text")
p + geom_bar(stat = "identity") + ggtitle("bar")
p + geom_tile() + ggtitle("raster")
p + geom_line() + ggtitle("line")
p + geom_area() + ggtitle("area")
p + geom_path() + ggtitle("path")
p + geom_polygon() + ggtitle("polygon")
生成图片:
图1:八种类型图
2.标签(Labels)
所用到的函数为geom_text()
,说白了就是把点换成了文本,参数有下面这些:
family
:可设置字体,下面代码中的"sans"
(默认字体),"serif"
,"mono"
代表三种字体;
df <- data.frame(x = 1, y = 3:1, family = c("sans", "serif", "mono"))
ggplot(df, aes(x, y)) +
geom_text(aes(label = family, family = family))
fontface
:可设置粗体或斜体,“plain”
默认普通值, “bold”
粗体、 “italic”
斜体;
df <- data.frame(x = 1, y = 3:1, face = c("plain", "bold", "italic"))
ggplot(df, aes(x, y)) +
geom_text(aes(label = face, fontface = face))
生成图片:
vjust
和hjust
:设置字体对齐方式。vjust
(“bottom”, “middle”, “top”, “inward”, “outward”);hjust
(“left”, “center”, “right”, “inward”, “outward”);最常用的路线之一是“inward”
:它将文本对齐到主画面的中间;
df <- data.frame(
x = c(1, 1, 2, 2, 1.5),
y = c(1, 2, 1, 2, 1.5),
text = c(
"bottom-left", "bottom-right",
"top-left", "top-right", "center"
)
)
ggplot(df, aes(x, y)) +
geom_text(aes(label = text))
ggplot(df,