搜索
人大经济论坛 附件下载

附件下载

所在主题:
文件名:  R语言学习笔记.pdf
资料下载链接地址: https://bbs.pinggu.org/a-3454319.html
附件大小:
307.63 KB   举报本内容
<!-- markdown css tag --><div class="pinggu_markdown">
<div class="pinggu_markdown__html"><h1 id="r语言学习笔记之2&#48;21.&#48;5.11">R语言学习笔记之2&#48;21.&#48;5.11</h1>
<h3 id="多图布局">多图布局</h3>
<p><strong>推荐函数:plot_layout</strong><br>
函数命令格式:plot_layout(<br>
ncol = NULL,<br>
nrow = NULL,<br>
byrow = FALSE,#类似于matrix()中的byrow。如果为FALSE,则将按主要列顺序填充图<br>
widths = NULL,<br>
heights = NULL,#网格中每个列和行的相对宽度和高度。会重复出现以匹配网格的尺寸<br>
guides = NULL,<br>
tag_level = NULL,<br>
design = NULL<br>
)<br>
示例:library(ggplot2)<br>
p1 &lt;- ggplot(mtcars) + geom_point(aes(mpg, disp))<br>
p2 &lt;- ggplot(mtcars) + geom_boxplot(aes(gear, disp, group = gear))<br>
p3 &lt;- ggplot(mtcars) + geom_bar(aes(gear)) + facet_wrap(~cyl)<br>
p4 &lt;- ggplot(mtcars) + geom_bar(aes(carb))<br>
p5 &lt;- ggplot(mtcars) + geom_violin(aes(cyl, mpg, group = cyl))</p>
<p>默认情况下图片的布局是:</p>
<p>p1 + p2 + p3 + p4 + p5</p>
<p>图片略</p>
<p>使用参数改变网格填充方式:</p>
<p>p1 + p2 + p3 + p4 + p5 + plot_layout(byrow = FALSE)</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;2338294.png" alt="image-2&#48;21&#48;51&#48;1&#48;2338294">
<p>更改网格尺寸:</p>
<p>p1 + p2 + p3 + p4 + p5 + plot_layout(ncol = 2, widths = c(1, 2)) ##改为两列,宽度分别为1,2</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;2436624.png" alt="image-2&#48;21&#48;51&#48;1&#48;2436624">
<p>在不同嵌套级别定义布局</p>
<p>p1 + p2 +(p3 + p4 +plot_layout(ncol = 1) ) + p5 + plot_layout(widths = c(2, 1))##图3和图4嵌套进一个网格并且成一列,总体两列宽度分别为2,1</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;2846935.png" alt="image-2&#48;21&#48;51&#48;1&#48;2846935">
<p>复杂的布局可以用“设计”参数来创建:</p>
<p>design &lt;- c(area(1, 1, 2),area(1, 2, 1, 3),area(2, 3, 3),area(3, 1, 3, 2),area(2, 2))<br>
p1 + p2 + p3 + p4 + p5 + plot_layout(design = design)</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;3145241.png" alt="image-2&#48;21&#48;51&#48;1&#48;3145241">
<p>相同的可以指定为字符串:</p>
<p>design &lt;- “122153443”<br>
p1 + p2 + p3 + p4 + p5 + plot_layout(design = design)</p>
<p><font color="red">错误: Patch areas must be rectangular</font></p>
<p>正确打开方式为:</p>
<p>design &lt;- "<br>
122<br>
153<br>
443<br>
"<br>
p1 + p2 + p3 + p4 + p5 + plot_layout(design = design)</p>
<p>图片同上</p>
<p>当使用字符串定义设计时,’ # '可以用来表示空areas</p>
<p>design &lt;- "</p>
<p>1##</p>
<p>123</p>
<p>##3</p>
<p>"<br>
p1 + p2 + p3 + plot_layout(design = design)</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;4142646.png" alt="image-2&#48;21&#48;51&#48;1&#48;4142646">
<p>使用参考线="collect"删除重复的参考线:</p>
<p>p6 &lt;- ggplot(mtcars) + geom_point(aes(mpg, disp, color=cyl))<br>
p7 &lt;- ggplot(mtcars) + geom_point(aes(mpg, hp, color=cyl))<br>
p6 + p7 + plot_layout(guides=‘collect’)</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;4431134.png" alt="image-2&#48;21&#48;51&#48;1&#48;4431134">
<p>引导位置必须适用于整个拼接</p>
<p>p6 + p7 + plot_layout(guides=‘collect’) &amp;<br>
theme(legend.position=‘bottom’)</p>
<img src="C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-2&#48;21&#48;51&#48;1&#48;4451752.png" alt="image-2&#48;21&#48;51&#48;1&#48;4451752">
</div>
</div>


    熟悉论坛请点击新手指南
下载说明
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。
2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。
3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。
(如有侵权,欢迎举报)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

GMT+8, 2026-1-30 06:28