gridview 居中(gridviewrow)

gridview 居中(gridviewrow)大侠 可曾听闻图中图的画法 今天 给大家分享两种将子图嵌入主图的方法 当然 这两种方法的原理不一样 大家可以对比选择哈 那么开始分享吧 1 viewport 函数 第一种方法是使用 grid 包中的 viewport 函数 viewport 函数可以创建视图窗口 由 x y width height4 个参数视图窗口的大小和位置 范围都是 0 到 1 例如 x 0 y 0 表示子图位于主图左下角

大家好,我是讯享网,很高兴认识大家。



大侠

可曾听闻图中图的画法

今天

给大家分享两种将子图嵌入主图的方法

当然

这两种方法的原理不一样

大家可以对比选择哈

那么开始分享吧

1.viewport()函数

     第一种方法是使用grid包中的viewport()函数,viewport()函数可以创建视图窗口,由x, y, width, height4个参数视图窗口的大小和位置,范围都是0到1。例如,x=0,y=0表示子图位于主图左下角,x=0.5,y=0.5表示子图位于主图中间,还可以通过just参数来将图形放置在边角,下面的示例代码会展示。另外,还能用unit(数字,"单位")来自己控制距离,这个大家可以自己去试试哈。接下来以一个简单的例子来展示吧!

#载入包

    利用上述代码我们便得到下图

    上述的最后两句代码很关键,我们需要使用print()函数的vp参数在新的视图窗口画图。在R语言中运行代码时会自动调用print()函数,但当我们想要自定义视图的时候就需要自己手动调用才行。

    这个例子虽然十分简单,但可以相当于一个模板了,只需要做好两张图,然后对号入座,一张图中图就做好啦。


讯享网

2.annotation_custom函数

    第二种方法是使用annotation_custom函数,这个函数不仅可以添加子图,还可以添加表哦。

函数的格式:

annotation_custom(grob,xmin,xmax,ymin,ymax)

grob表示要插入的图表等

xmin和xmax表示坐标轴的水平位置

ymin和ymax表示坐标轴的垂直位置

话不多说,上例子!

    于是我们又得到下图

    没错没错,熟悉的配方,重点是展示代码,细节实际需要再调就好了。子图嵌入主图之前要先转化成grob对象,这样,一张图中图就出来了。

末尾

    最后再展示一下图中嵌入表吧!

    这个表似乎太简洁了,让我们换个主题试试吧。

    利用下列代码可得到下图

    ggtexttable函数的功能还是很强大的,大家可以自己去探索一番。

    值得注意的是,虽然这个展示出来的是表,但它实际是图哦,class()函数的结果是"ggplot"。

    今天分享的内容到这就结束啦,喜欢我们的内容就扫描下面二维码关注我们以及科研侠微信公众号,关注获取更多科研干活吧

[参考资料]

[1]    《ggplot2:数据分析与图形艺术》

小讯
上一篇 2025-04-18 15:29
下一篇 2025-04-30 07:34

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/177531.html