ggplot 以非常不同的大小写入 pdf 和 png
ggplot writes to pdf and png with very different sizes
我创建了一个包含 4 个图的网格,然后将其写入 pdf 和 png。由于我不明白的原因,图表和字体的绘制方式不同(png 格式比 pdf 格式小得多)。我使用的命令是:
pdf("Cusum Page 1.pdf")
grid.arrange(log_return_plot, tracking_error_plot,
ir_graph, excess_vol,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
和
png(filename = "Cusum Page 1.png", width = 800, height = 800, units = "px",
pointsize = 12, bg = "white", res = NA, family = "", restoreConsole = TRUE,
type = c("windows", "cairo", "cairo-png"), antialias = "d")
grid.arrange(log_return_plot, tracking_error_plot,
ir_graph, excess_vol,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
我尝试更改和删除 png 调用中的各种选项,但没有成功 - 我只是无法使我的 png 和 pdf 看起来相同。此问题的根本原因是否已知?我非常感谢有关设置的建议,我应该尝试更改这些设置以使两个导出相同。
此致并提前致谢
托马斯·飞利浦
我怀疑这与设置每个选项的 width
和 height
参数以及设置 png::res
(标称分辨率)和 pdf::pointsize
(默认值)有关到 12) 同意。
pdf 尺寸默认为英寸,因此我已将 png 尺寸设置为英寸。
这是解决方案的初步尝试。
library(gridExtra)
library(ggplot2)
pdf("Cusum Page 1.pdf", width = 6, height = 6)
grid.arrange(p1, p2, p3, p4,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
png(filename = "Cusum Page 2.png", width = 6, height = 6, units = "in",
pointsize = 12, bg = "white", res = 144, family = "", restoreConsole = TRUE,
type = c("windows", "cairo", "cairo-png"), antialias = "d")
grid.arrange(p1, p2, p3, p4,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
图形
p1 <-
ggplot(iris) +
geom_histogram(aes(Sepal.Length))
p2 <-
ggplot(iris) +
geom_histogram(aes(Sepal.Width))
p3 <-
ggplot(iris) +
geom_histogram(aes(Petal.Length))
p4 <-
ggplot(iris) +
geom_histogram(aes(Petal.Width))
由 reprex package (v2.0.0)
于 2021 年 7 月 12 日创建
png
pdf - 转换为 jpg 以启用上传
我创建了一个包含 4 个图的网格,然后将其写入 pdf 和 png。由于我不明白的原因,图表和字体的绘制方式不同(png 格式比 pdf 格式小得多)。我使用的命令是:
pdf("Cusum Page 1.pdf")
grid.arrange(log_return_plot, tracking_error_plot,
ir_graph, excess_vol,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
和
png(filename = "Cusum Page 1.png", width = 800, height = 800, units = "px",
pointsize = 12, bg = "white", res = NA, family = "", restoreConsole = TRUE,
type = c("windows", "cairo", "cairo-png"), antialias = "d")
grid.arrange(log_return_plot, tracking_error_plot,
ir_graph, excess_vol,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
我尝试更改和删除 png 调用中的各种选项,但没有成功 - 我只是无法使我的 png 和 pdf 看起来相同。此问题的根本原因是否已知?我非常感谢有关设置的建议,我应该尝试更改这些设置以使两个导出相同。
此致并提前致谢
托马斯·飞利浦
我怀疑这与设置每个选项的 width
和 height
参数以及设置 png::res
(标称分辨率)和 pdf::pointsize
(默认值)有关到 12) 同意。
pdf 尺寸默认为英寸,因此我已将 png 尺寸设置为英寸。
这是解决方案的初步尝试。
library(gridExtra)
library(ggplot2)
pdf("Cusum Page 1.pdf", width = 6, height = 6)
grid.arrange(p1, p2, p3, p4,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
png(filename = "Cusum Page 2.png", width = 6, height = 6, units = "in",
pointsize = 12, bg = "white", res = 144, family = "", restoreConsole = TRUE,
type = c("windows", "cairo", "cairo-png"), antialias = "d")
grid.arrange(p1, p2, p3, p4,
layout_matrix = rbind(c(1, 2), c(3, 4)))
dev.off()
图形
p1 <-
ggplot(iris) +
geom_histogram(aes(Sepal.Length))
p2 <-
ggplot(iris) +
geom_histogram(aes(Sepal.Width))
p3 <-
ggplot(iris) +
geom_histogram(aes(Petal.Length))
p4 <-
ggplot(iris) +
geom_histogram(aes(Petal.Width))
由 reprex package (v2.0.0)
于 2021 年 7 月 12 日创建png
pdf - 转换为 jpg 以启用上传