首页 服务 查看内容

R语言绘图—坐标系列的自定义|环球今亮点

2023-04-25 20:07:20

来源: 哔哩哔哩

在我们实际绘图中有时会碰到修改横纵坐标轴的问题,那么我们如何修改自定义自己需要的坐标轴呢?今天来给大家介绍下ggplot2中坐标轴的自定义修改。


【资料图】

这里我们使用之前的推文:R语言绘图—分组箱式图及添加数据点中的数据。

图形如下:

二、横纵坐标刻度标签变化

在theme函数中axis.text.x和axis.text.y参数分别设置的是x轴和y轴上的标签,具体设置参数如下:

其中family设置的字体;face设置字体是否斜体、加粗等,有“plain”, “italic”, “bold” and “bold.italic”等;colour设置颜色,size设置字体大小。

2.1设置x轴上标签颜色为红色、字体大小为30,斜体加粗

2.2设置y轴上标签颜色为红色、字体大小为30,斜体加粗

3.3不显示标签

可以指定axis.text.x 或axis.text.y的文本内容为空,如:

3.3.1指定y轴不显示标签:

3.3.2指定x轴不显示标签

3.3.3两者都不显示可以为:

三、定制轴线

如果我们想设置xy轴的轴线,可通过theme函数中的axis.line参数来设置,具体用法为:

其中colour为颜色;size为线的粗细;linetype为线条的类型,有“blank”, “solid”, “dashed”, “dotted”, “dotdash”, “longdash”, “twodash”等类型;lineend为线条末端的形态,有“round”, “butt” or “square”等类型。

3.1示例

我们设置轴线为橘黄色、粗细为2,线条类型为dotdash,线条末端为圆形。

我们还可以分别通过:scale_x_discrete(name, breaks, labels, limits)、scale_y_discrete(name, breaks, labels, limits)函数为x,y轴自定义一些设置。其中name为x,y轴的标签,功能相当于xlab和ylab,breaks可以自定义轴上显示的值(可以不按轴上的默认值来显示),labels设置的是轴上的标签名,limits设置的是x,y轴显示的范围。

3.2改变轴名称和轴标签名称

我们还可以分别通过:scale_x_discrete(name, breaks, labels, limits)、scale_y_discrete(name, breaks, labels, limits)函数为x,y轴自定义一些设置。

其中name为x,y轴的标签,功能相当于xlab和ylab,breaks可以自定义轴上显示的值(可以不按轴上的默认值来显示),labels设置的是轴上的标签名,limits设置的是x,y轴显示的范围。

3.2改变轴名称和轴标签名称

可以发现X轴的名称和轴标签名称发生了变化。

3.3限制范围和改变顺序

我们还可以自定义x轴上显示的范围以及图形显示的顺序:

可以发现这个图形的顺序是发生了改变的,虽然我们也可以指定ABC作为因子的顺序,但是通过limits可以帮我们把这个步骤给省略掉。另外大家也可以发现我们虽然将"A"改为"RA","B"改为"RB","C"改为"RC",但在limits参数中我们得使用它原来的名称。

在limits中我们将C组去掉,图形将只显示A和B,如:

这个参数的使用也极大的增加了我们显示图形的自主性,省略了我们处理数据的大量步骤。y轴的用法同样如此,只需在scale_y_discrete中设置参数即可。

3.4连续性数据的轴

上面我们演示的是分组变量绘制的轴线,如果我们的是连续性的我们则需要scale_x_continuous()和scale_y_continuous()函数,函数的用法如下:

参数的意义同上,其中trans用于轴的变换,如显示指数、log变换、平方变换等。

3.4.1自定义轴上数据的显示

这里我们自定义设置y轴上的数字,而不是按规律的出现,如:

3.5将数字显示为百分比、科学计数法:

这里使用了scales包,分别转为了百分比、价格、科学计数法。

好啦,今天的介绍就到这里了,喜欢的话记得分享给需要的人吧!

关键词:

最新新闻
回顶部