R,绘图,多个绘图图形中字体大小的变化

2023-12-15

我正在为出版物创建图表,并希望它们具有相同的字体大小。

当我创建一个图形时多块地块, the 字体变小即使我没有改变tiff()分辨率或pointsize范围。 我根据最终适合的绘图数量增加了图形大小,并确保单个和多个绘图图形的边距相等。

以下是示例代码(1x1 和 2x1 图形的字体大小一致,但 3x2 图形的字体大小减小):

tiff("1x1.tif", width=3,height=2.5,units="in",res=600,pointsize=8,
compression="lzw",restoreConsole=T)
par(mfrow=c(1,1),mar=c(4,4,.5,.5)+0.1)
plot(x=rnorm(10),y=rnorm(10))
dev.off()

tiff("2x1.tif", height=2.5*2,width=3,units="in",res=600,pointsize=8,
compression="lzw",restoreConsole=T)
par(mfrow=c(2,1),mar=c(2,4,2.5,0.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),xaxt="n",xlab="")
par(mar=c(4,4,0.5,0.5)+0.1)
plot(x=rnorm(10),y=rnorm(10))
dev.off()

tiff("3x2.tif", height=2.5*3,width=3*2,units="in",res=600,pointsize=8,
compression="lzw",restoreConsole=T)
par(mfrow=c(3,2),mar=c(.5,4,4,0.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),xaxt="n",xlab="")
par(mar=c(.5,2,4,2.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),xaxt="n",xlab="",yaxt="n",ylab="")
par(mar=c(2.5,4,2,0.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),xaxt="n",xlab="")
par(mar=c(2.5,2,2,2.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),xaxt="n",xlab="",yaxt="n",ylab="")
par(mar=c(4.5,4,0,0.5)+0.1)
plot(x=rnorm(10),y=rnorm(10))
par(mar=c(4.5,2,0,2.5)+0.1)
plot(x=rnorm(10),y=rnorm(10),yaxt="n",ylab="")
dev.off()

为什么会发生这种情况?

PS:我没有使用ggplot2 or lattice因为我在“实际”数字上使用我自己的误差条函数(我现在不记得为什么,但我尝试使用 ggplot2 误差条,但没有得到我想要的)。


控制图中对象(包括文本)整体相对大小的参数称为cex。当您使用许多面板时,默认情况下它会减少,但可以通过手动将其设置为覆盖它1.

par(mfrow=c(3,2), mar=c(.5,4,4,0.5)+0.1, cex=1)

题外话

看起来你应该使用oma(外缘)而不是调用par(mar=...)之间的调用plot。我发现它非常有用,但似乎几乎没有人知道它。还ann=FALSE关闭所有注释,las=1将轴刻度标签水平旋转。

par(mfrow=c(3,2), oma=c(4.5, 4, 4, 2.5), mar=rep(.1, 4), cex=1, las=1)
plot(x=rnorm(10), y=rnorm(10), ann=FALSE, xaxt="n")
plot(x=rnorm(10), y=rnorm(10), ann=FALSE, xaxt="n", yaxt="n")
plot(x=rnorm(10), y=rnorm(10), ann=FALSE, xaxt="n")
plot(x=rnorm(10), y=rnorm(10), ann=FALSE, xaxt="n", yaxt="n")
plot(x=rnorm(10), y=rnorm(10), ann=FALSE)
plot(x=rnorm(10), y=rnorm(10), ann=FALSE, yaxt="n")
title("My plot", outer=TRUE)
mtext("X-axis label", 1, 3, outer=TRUE)
mtext("Y-axis label", 2, 3, outer=TRUE, las=0)

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R,绘图,多个绘图图形中字体大小的变化 的相关文章

随机推荐

  • 适用于 Android、iOS 和 Flash 的 WebSocket 库 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有人可以提供一个在 Android iOS iPhone iPad 和 Flash 不是 Flex 中实现 WebSocket 的示例吗 我找到了一
  • 用于使用已知模式解析字符串中的值的 sscanf 的 Java 等效项是什么?

    所以我有 C 背景 最初是 C 语言 尽管我已经有近 5 年没有使用过该语言了 我正在尝试从 Java 中的字符串中解析一些值 在 C 中我会使用 sscanf 在Java中 人们告诉我 使用Scanner或StringTokenizer
  • git:为什么我可以签出我删除的提交?

    我有一个包含三个提交的分支 mybranch a gt b gt c 我将其推送到远程仓库 然后我决定我不想保留提交b and c 所以按照描述删除它们here git reset hard HEAD 1 git reset hard HE
  • Python:“import X as X”(其中 X 相同)有什么意义?

    In aiohttp我发现很多说法import X as X 为什么要这样做 文件的链接 我不知道答案 但链接源文件的历史记录透露了它 构造from SOMEWHERE import X as X 与相同的X 需要消除警告mypy stri
  • 如何将我的“分离头”提交返回到主服务器[重复]

    这个问题在这里已经有答案了 看起来几天前我创建了一个名为detached HEAD并一直致力于此 我的正常流程是承诺master然后将其推至origin 但我无法推动detached HEAD 我的下一站搞砸了我 我选择了git check
  • 在 WPF 中限制“Auto”和“1*”的行高

    我有一个 WPF 应用程序 其布局由顶层的 3 行组成Grid 我希望中间行用完它需要的空间 它需要的最大空间是有限的 但取决于窗口的宽度 底行应用完剩余空间 棘手的部分是顶行 它的大小可能会根据切换大部分内容的可见性的按钮而变化 我希望它
  • 在添加包含第一个对象的对象时,如何防止 EF 插入数据库中已存在的对象?

    这是不言自明的 我有一个包含另一个类的类 我们称它们为主题和课堂 public class Subject public Classroom Class get set 我使用的是无状态外观 这意味着我的 DbContext 在恢复对象后立
  • SED:匹配同一行上的 2 个模式

    您好 我想使用 sed 删除一行 如果它与同一行中的 2 个正则表达式匹配 EG 该行以 开头 以 结尾 注释 下面的脚本将完成大部分工作 sed e d e d 文件名 该脚本将删除所有以 开头并以 结尾的行 我希望它仅在满足两个条件而不
  • 当应用程序位于前台时如何处理 Firebase 通知

    我已将 Firebase Cloud Messaging 与我的应用程序集成 当我从 Firebase 控制台发送通知时 如果应用程序处于后台或未打开 我会成功收到通知 否则 如果应用程序位于前台或打开 我没有收到它 感谢所有建议 当应用程
  • C 中数组初始化中的方括号是什么意思?

    static uint8 t togglecode 256 0x3A CAPSLOCK 0x45 NUMLOCK 0x46 SCROLLLOCK 是什么意思 0x3A 这里 我只学到了像这样的陈述int a 2 1 2 这意味着初始化n 数
  • 模拟器上的越狱应用程序?

    我正在 Xcode 上为越狱的 iPhone 开发应用程序 我使用的是 Xcode 4 2 我的 iPhone 操作系统是 iOS6 我无法将我的iPhone与XCode连接进行测试 因为XCode 4 2不支持iOS6 每次当我编译代码并
  • 在 Python 中使用空格有什么陷阱吗?

    目前 我在 Python 中从未遇到过空格问题 尽管我只在两个项目中使用过它 而且我是唯一的程序员 对于学习 Python 的人来说 Python 中的空格和缩进有哪些潜在的陷阱 在某些编辑器中 一行用空格缩进 而下一行用制表符缩进 这可能
  • 如何根据动态字段对 solr 结果进行排序

    我需要根据动态字段对结果进行排序 我怎样才能做到这一点 当我对其中一些动态属性的最小值进行排序时 它没有给出正确的结果 因为我的查询就像 sort min A 160018 A chandigarh1 一些文档同时具有这两个字段A 1600
  • python 从 tsv 文件链接一个列表

    我有这个 tsv 文件 其中包含一些链接路径 每个链接由 分隔我想用 在下面的示例中 我们可以看到文件中的文本是分开的 我只想通读最后一列 这是一条以 14th 开头的路径 6a3701d319fc3754 1297740409 166 1
  • 如何从 PHP 文本中删除空行?

    我需要在 PHP 中删除空白行 带有空格或绝对空白 我使用这个正则表达式 但它不起作用 str ereg replace t r n str str preg replace t r n str 我想要的结果是 blahblah blahb
  • 如何在 Android 4.2 中以编程方式卸载 USB 驱动器

    我读过很多关于这个主题的文章 但我还没有找到解决方案 在我的应用程序中 我需要在将文件从 USB 驱动器复制到平板电脑后卸载 USB 驱动器 这样我就可以安全地删除它 而无需使用 设置 菜单 现在我正在使用这个方法 Utility copy
  • 如何通过ARC确保IOS 5中单例的销毁?

    比如说 我想创建一个里面有一些数据的单例 正如在单例中所期望的那样 数据仅动态分配一次 但我现在想知道何时以及如何发布这些数据 我应该建立特殊的方法来破坏单例吗 更具体地说 何时执行该单例的 dealloc 方法 谁对此负责 您可以声明显式
  • 尝试通过php执行python命令但权限错误

    我上传了一个图像文件并将其从临时文件夹复制到 var www 内的文件夹 然后 尝试通过 php 执行 python 命令 其中exec 命令采用以下格式 exec python file py FILES file name 即使执行以下
  • 如何从spark连接到远程hive服务器[重复]

    这个问题在这里已经有答案了 我在本地运行 Spark 想要访问位于远程 Hadoop 集群中的 Hive 表 我可以通过在 SPARK HOME 下启动 beeline 来访问配置单元表 ml master spark 2 0 0 bin
  • R,绘图,多个绘图图形中字体大小的变化

    我正在为出版物创建图表 并希望它们具有相同的字体大小 当我创建一个图形时多块地块 the 字体变小即使我没有改变tiff 分辨率或pointsize范围 我根据最终适合的绘图数量增加了图形大小 并确保单个和多个绘图图形的边距相等 以下是示例