Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何提高R中绘图的分辨率?_R_Plot_Resolution - Fatal编程技术网

如何提高R中绘图的分辨率?

如何提高R中绘图的分辨率?,r,plot,resolution,R,Plot,Resolution,我正在用R做简单的绘图,希望得到的图像具有很高的分辨率。我尝试在输出图像代码中指定较大的高度和宽度参数,但这只会生成带有模糊数据点的较大图像 我当前的代码如下所示: png(filename="simple_graphic.png", width=5600, height=1000) depth_plot <- c(a large list of data) plot(depth_plot, type="o", col="blue", log="y",) dev.off() png(fi

我正在用R做简单的绘图,希望得到的图像具有很高的分辨率。我尝试在输出图像代码中指定较大的高度和宽度参数,但这只会生成带有模糊数据点的较大图像

我当前的代码如下所示:

png(filename="simple_graphic.png", width=5600, height=1000)
depth_plot <- c(a large list of data)
plot(depth_plot, type="o", col="blue", log="y",)
dev.off()
png(filename=“simple\u graphic.png”,宽=5600,高=1000)

深度图这个问题有几种可能的答案,评论会小心地告诉你在哪里可以找到答案。我将通过提供他们提到的内容来破坏这一点,但也提出另一个问题:

  • 答案:在呼叫png时使用
    res=300
    (或更高)。在
    help(png)
    中,它声明默认ppi(每英寸像素数)为72,低于精细分辨率图形所需的值。300适合大多数打印机和屏幕,YMMV

    png(filename="simple_graphic.png", res=300) # perhaps width/height as well
    # ...
    dev.off()
    
  • 另一个问题:我可以用什么格式最好地显示我的图表?这一点经常被许多用R绘制图形的人所忽略,这很不幸,但很容易纠正:使用基于向量的图像格式。如果您使用的是Powerpoint或Word,那么最好制作一个增强的图元文件格式(EMF)文件

    如果您能够以可缩放矢量图形(SVG)格式(例如Inkscape、Scribus等)使用图像,则只需使用
    SVG(…)
    代替
    emf(…)
    。同样的选项/规则也适用

    类似地,如果您是LaTeX,您可以使用
    pdf(…)
    (相同语法)直接转到pdf


  • 注意:使用这些基于矢量(而不是基于光栅,如PNG)的图像格式的一个好处是,如果您想要/需要以不知道如何在R中使用的方式对图形进行精细化,您可以在类似Inkscape的东西中打开EMF/SVG/PDF,以便轻松修改线条(颜色、厚度)、文本(字体、大小、位置)、方框、箭头、,等。Inkscape将允许您导出到EMF、SVG、PDF、PNG等格式。请仔细阅读
    ?PNG
    。这可能会有所帮助:您可能还想看看导出包,该导出包可以轻松导出高质量的图形,包括矢量格式的Powerpoint;以及
    install.packages('devEMF') # just once
    library(devEMF)
    emf(filename="simple_graphic.emf", width=1024, height=800)
    # ...
    dev.off()