自动调整 PDF 输出中的 R 绘图大小

2024-01-19

当使用pdf()R 中用于将绘图保存在外部文件中的函数,我们可以指定width and/or height调整绘图的大小。然而,在某些情况下,我们会获得多个图(例如使用par(mfrow=c(2,4)))。在这种情况下,很难确定什么是最好的width and heightPDF 文件,以便正确显示所有绘图。有没有办法让R自动“拟合PDF文件中的绘图”?我搜索了参数pdf()并尝试了一些,但结果并不令人满意。非常感谢!


使用 ggplot 怎么样?

require(ggplot2)

# Bogus data
x <- rnorm(10000)
y <- as.factor(round(rnorm(10000, mean=10, sd=2), 0))
df <- data.frame(vals=x, factors=y)

myplot <- ggplot(data=df, aes(x=vals)) +
  geom_density() +
  facet_wrap(~ factors)

ggsave(filename="~/foo.pdf", plot=myplot, width=8, height=10, units="in")

EDIT:如果您需要打印多页,请参阅这个问题 https://stackoverflow.com/questions/3398568/r-ggplot-plotting-over-multiple-pages.

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

自动调整 PDF 输出中的 R 绘图大小 的相关文章

随机推荐

  • 使用 jQuery 发送新的 ajax 请求之前添加延迟

    我有一个指向 html 页面的链接列表 ul li a href assets data item1 html Item 1 a li li a href assets data item2 html Item 2 a li li a hr
  • 签名 APK:失败 [INSTALL_FAILED_DEXOPT].. 已更新

    生成的 app release apk 在我的设备上不起作用 但 app debug apk 工作正常 Update 转到我的应用程序的先前版本后 in my MainActivity我有这个字符串 public class MainAct
  • 获取codeigniter中复选框的多个值

    我目前正在做一个项目 我有一个复选框 用户将在其中选择公司提供的服务类型 当我尝试在控制器中发布所选的服务 例如检查了 2 个服务 时 我只获得一项服务 问题是如何获取复选框中的多个值 注意 我还尝试在控制器中使用 foreach 但收到一
  • GitHub:限制对特定分支的访问[重复]

    这个问题在这里已经有答案了 有没有办法限制对存储库中某些分支的访问 我们有生产和主分支 有时会因流氓推送而变得混乱 Not with GitHub in the same repo as opposed to local repos whi
  • 错误:启动 my_project docker 设置时,池与此地址空间上的其他池重叠

    我正在尝试设置 docker 但收到以下错误 错误 池与此地址空间上的其他池重叠 请问我应该怎么解决呢 您能否向我们提供您运行的命令以及您的docker compose yml请归档 您遇到的错误表明您存在网络地址冲突 要检查您是否可以运行
  • GitHub Actions:仅针对某些拉取请求基础分支运行步骤

    我已经在 GitHub Actions 上工作了一段时间了 我们已经制定了指定的工作流程 工作流程是用 yaml 编写的 我正在尝试放一些if的条件为github ref并且 yaml 的该块在运行时被跳过 这意味着 如果针对 X 分支提出
  • 如何从循环内正确修改Python循环的迭代器

    我基本上需要的是检查列表中的每个元素 如果符合某些条件 我想将其从列表中删除 比如说 list a b c d e 我基本上想写 原则上而不是我尝试实现的实际代码 如果列表中的元素是 b 或 c 则将其从列表中删除并获取下一个 But fo
  • 将 SVG 转换为 png 或其他?

    由于在 iPython 笔记本中显示 SVG 文件的内容非常容易 是否还有一种方法 也很简单 来获取我们在 png 文件或其他文件中看到的内容 from IPython display import SVG SVG filename ima
  • sonar-plugin-api 4.5.2 的 Javadoc

    为了开发我自己的SonarQube插件 我正在搜索sonar plugin api 4 5 2的javadoc api 但我在互联网上没有找到它 对于 3 x x 版本 maven 还下载了 jar 的源代码 因此我能够从中生成 javad
  • SWI Prolog 中的 Python pickling 等效吗?

    我有一个 Prolog 程序 我正在对所有达到一定长度的字符串进行强力搜索 我正在检查哪些字符串与特定模式匹配 不断添加模式 直到希望找到一组涵盖所有字符串的模式 我想将哪些存储到与我的任何模式都不匹配的文件中 这样当我添加新模式时 我只需
  • mprotect() 的替代方法

    mprotect 系统调用保护页边界内的内存区域 int mprotect void addr size t len int prot Here len应该是页面大小的倍数 有没有办法只保护几个连续的地址 这些地址不与页边界对齐 即len
  • 使用 Yocto 构建固件的最佳实践

    我有一个基于 rocko 分支的工作 Yocto 构建系统 该系统正在为基于 ARM 的目标板生成图像 该板上的芯片之一是一个基于 ARM 的小型微控制器 与主 CPU 分离 它需要加载我必须构建的固件映像 制定构建此微控制器固件的方法很容
  • 如何将 DD-MM-YYYY 日期格式字符串转换为 YYYY-MM-DD 日期格式字符串或 Objective-C 中的 NSDate 对象?

    我已经从 XML 中读取了日期 它给了我返回日期的字符串DD MM YYYY 但是当我想将它添加到我的核心数据数据库时 SQLite 对我进行了错误的排序 因此我必须将其转换为日期格式或字符串 例如 YYYY MM DD 但 SQLite
  • Fody 仅在 MSBuild 16 及更高版本上受支持。当前版本:15

    Visual Studio 2017 让我知道今天早上对 Fody 版本 5 进行了升级 我接受并更新了 Fody 和 PropertyChanged Fody 的 NuGet 包 现在 我的项目 解决方案将不再构建 错误是 Fody 仅在
  • 如何使用.NET Timer类在特定时间触发事件?

    我希望在我的应用程序中触发一个事件 该事件在一天中的某个时间 例如下午 4 00 连续运行 我考虑每秒运行一次计时器 当时间等于下午 4 00 时运行该事件 这样可行 但我想知道是否有办法只在下午 4 00 回调一次 而不必继续检查 像这样
  • 多次处理对象错误。 CA2202。有没有更好的办法?

    如何确保以下代码以更好的方式处理所有对象 目前 代码分析告诉我 错误 45 CA2202 Microsoft Usage 对象 ns 可以在方法 CPCommunicator GetResults string 中多次处置 为了避免生成 S
  • 如何使用nodejs从系统获取本地时区

    有没有办法使用nodejs从系统 例如 ubuntu 获取本地时区 我使用 moment js 提取日期和时间值 但也找不到提取时区的方法 现有的答案将告诉您当前的时区偏移量 但是如果您要比较历史 未来的时间点 您将会遇到问题 因为这无法满
  • 同一台机器上有 2 个 Sonar 实例

    我们可以在同一台机器上运行 Sonar 的 2 个实例 2 个不同版本 吗 目前 Sonar 3 7 3 已安装并与 Hudson 一起用于 Sonar Reports 现在 有一些项目运行在 Java 8 上 而 3 7 3 Sonar
  • using 声明不能在函数作用域内重复。这是为什么?

    在 namespace udecl 10 中有以下示例 namespace A int i namespace A1 using A i using A i OK double declaration void f using A i us
  • 自动调整 PDF 输出中的 R 绘图大小

    当使用pdf R 中用于将绘图保存在外部文件中的函数 我们可以指定width and or height调整绘图的大小 然而 在某些情况下 我们会获得多个图 例如使用par mfrow c 2 4 在这种情况下 很难确定什么是最好的widt