R语言可视化及作图7--ggplot2之标签、图例和标题绘制

Python014

R语言可视化及作图7--ggplot2之标签、图例和标题绘制,第1张

R语言绘图系列:

使用geom_label绘制标签散点图

绘制点,并通过nudge参数对标签进行x轴和y轴上的平移

使用angle参数对标签角度进行设置

geom_label可以使用fill对颜色进行填充,fontface设置字体,geom_text不能填充颜色

parse参数意思是前面传入的是一个数学表达式,size定义标签相对大小。

画一个散点图

annotate函数传入标签

添加矩形

添加短线段

2.1 guide_legend函数(主要参数:color, shape, size)

图例调整函数也属于标度函数的一类,但不可以直接使用加号来连接,必须放在函数中,作为一个参数。

guide_colorbar和guide_legend设置的是不同的图例,guide_colorbar定义色条图例,guide_legend定义普通图例。

2.2 标度函数scale

对于连续型变量,使用的参数是scale_xxx_continous(),对于分类型变量,使用的是scale_xxx_discrete()。

2.3:theme函数

在theme函数中,与图例有关的主要参数有:

标题主要有五种:主标题,副标题,角注,x轴标签和y轴标签

ggtitle()只能定义标题和副标题,默认的位置在左上角。

用于指定文本大小的参数

cex:表示相对于默认大小缩放倍数的数值。默认大小为1,1.5表示放大为默认值的1.5倍。0.5表示做小为默认大小的0.5倍。

cex.axis:坐标轴刻度文字的缩放倍数。类似cex。

cex.lab:坐标轴标签(名称)的缩放倍数:

cex.main:标题的缩放倍数。

cex.sub:副标题的缩放倍数。

用于指定字体、字号、字样的参数

font:整数。用于指定绘图使用的字样。1 = 常规,2 = 粗体,3 = 斜体,4 = 粗斜体, 5 = 符号字体 (以adobe符号编码表示)

**font.axis:**坐标轴刻度文字的字体样式;

font.lab:坐标轴标签的字体样式;

font.main:标题的字体样式;

font.sub:副标题的字体样式;

**ps:**字体的磅值(1磅 = 1/72英寸)。文本的最终大小为平ps*cex;

family:绘制文本时候使用的字体簇。标准的取值为serif(衬线),sans(无衬线),mono(笔宽)

使用par()函数来改变之后绘图的参数。

当需要恢复默认参数par(opar)

names(pdfFonts())查看当前pdf可以使用的字体名称。

title: "Rfonts"

author: "wintryheart"

date: "2020/7/6"

output:

html_document:

toc: true

toc_depth: 2

number_sections: true

在windows系统中,字体集(the font family)只是一个字符串名字,必须映射到特定的windows字体。

windowsFonts() 函数,用于列出已有的字体映射,或定义新的映射。 windowsFont() 函数用于创建一个新的映射。

系统自带三个字体集名: "serif" "sans" "mono" ,分别映射 "TT Times New Roman" "TT Arial" "TT Courier New"

这些映射只有在字体风格(font face)是 1 (plain), 2 (bold), 3 (italic), or 4 (bolditalic) 时使用。

showtext 的主要优点是用户可以使用任何受支持的字体文件进行文本渲染,文本符号将被转换为多边形(用于矢量图形)或光栅图像(用于位图和屏幕图形),从而在所有平台上生成与设备无关的输出。如果您想在图形设备中使用非标准字体,此函数将非常有用。

为了使pdf()更好地显示特定的中文字体,需要调用中文字体文件,比如windows系统自带的 simkai.ttf

Cairo初始化一个新的图形设备,使用Cairo图形库进行渲染。当前能制作高质量的PNG、JPEG、TIFF位图文件、具有嵌入式字体的高分辨率PDF文件、SVG图形和PostScript文件。它还提供了X11和Windows交互式图形设备。不像其他设备,它支持所有的图形功能,包括alpha混合,抗锯齿等。

CairoX11()、CairoPNG()、CairoPDF()、CairoPS()和CairoSVG()是Cairo的简易的基本类型包装器,它们使用的参数与所替换的设备(如X11()、png()、pdf()等)相同。

但由于Cairo()更灵活,建议使用Cario()函数。

Cairo.capabilities()查看cairo包支持的所有图形格式。

注:Cairo()输出pdf图形时,必须设置dpi。没有经验,不好设置。在上例中dpi不能大于100。不如直接使用CairPDF()更为方便,不用设置dpi。

注: