CairoPNG增加了绘图边距之外的文本大小

时间:2013-09-11 11:10:41

标签: r plot ggplot2 data-visualization cairo

我有一个使用ggplot2创建的图表,我想使用CairoPNG,因为特别是在创建饼图pngjpeg时会创建一个非常像素化的图像。问题是CairoPNG似乎修改了文本大小,因此,特别是在图例中,一个键的文本与其他键重叠,或者,如上所述

library(ggplot2)
library(Cairo)

df <- data.frame(id=c("IMPORT VALUES YTD", "EXPORT VALUE YTD"),
                 value=c(6,4))

chart <- ggplot(df) +
  geom_bar(aes(x=factor(1), y=value, fill=factor(id)),
           stat="identity", width = 1, color="white") +
  coord_polar(theta="y")  +
  theme(legend.title=element_blank(),
        legend.position="top",
        legend.text=element_text(size=14))

CairoPNG("test1.png", 350, 400)
chart
dev.off()

enter image description here

png("test2.png", 350, 400)
chart
dev.off()

enter image description here

你知道如何避免这种情况吗?

1 个答案:

答案 0 :(得分:1)

这是一个改编自@rcs answer的解决方法。 添加到您的代码:

library(grid)

theme内部阻止:

plot.margin = unit(c(0,2,0,0), "lines")

enter image description here