0

    将绘图保存为图像或向量图形文件

    2023.05.18 | admin | 182次围观

    将绘图保存为图像或向量图形文件

    您可以使用坐标区工具栏中的导出按钮

    ,或通过调用 exportgraphics 函数,将绘图另存为图像,或另存为向量图形文件。在决定要使用的内容类型时,应考虑要将文件放入其中的文档的质量、文件大小和格式要求。

    大多数应用程序都支持图像。它们适用于表示绘画图像和复杂的曲面。但是,由于图像由像素组成,因此当您在其他具有不同分辨率的设备上打印或显示它们时,它们不一定能够很好地缩放。在某些情况下,您可能需要以足够的分辨率保存图像,以满足某些质量要求。文件的分辨率越高,大小就越大,这会使它们难以通过电子邮件共享或上传到服务器。而且很难在不引入人为处理痕迹的情况下编辑图像中的线和文本。

    向量图形文件包含绘制线、曲线和多边形的说明。它们适用于表示由线、曲线和纯色区域组成的内容。这些文件包含可缩放到任意大小的高质量内容。但是,某些曲面和网格图过于复杂,无法使用向量图形来表示。某些应用程序支持对向量图形文件进行广泛的编辑,但其他应用程序仅支持调整图形大小。

    无论将绘图另存为图像还是向量图形文件,在保存文件之前,都可以通过在 MATLAB® 图窗中最终确定您的内容,来获得最佳结果。

    以交互方式保存绘图

    要使用交互式控件保存绘图,请使用坐标区工具栏中的导出按钮

    。将鼠标指针悬停在坐标区右上角时会显示该工具栏。该导出按钮支持三种图像格式(PNG、JPEG 和 TIFF)以及 PDF 文件网站路径大小写,PDF 文件中可以包含图像或向量图形,具体取决于坐标区中的内容。

    例如,创建一个条形图。通过将鼠标悬停在坐标区工具栏中的导出按钮

    上,然后在下拉列表中选择第一项,将图保存到文件中。

    bar([1 11 7 8 2 2 9 3 6])

    MATLAB 显示包含文件类型选项的“另存为”对话框。

    当使用导出按钮保存绘图时,输出将围绕坐标区内容(包括任何图例或颜色栏)精确裁剪。输出不包括坐标区以外的内容,例如图窗中的其他坐标区。

    如果图窗以分块图布局方式包含多个绘图,您可以通过将工具栏移到布局上将所有绘图保存在一起。要移动工具栏,请调用 axtoolbar 函数并将 TiledChartLayout 对象指定为输入参数。然后将鼠标悬停在工具栏中的导出按钮上。将鼠标悬停在布局的右上角时,将会显示工具栏

    将绘图保存为图像或向量图形文件

    以编程方式保存绘图

    注意

    以下示例使用了 exportgraphics 函数,该函数从 R2020a 开始提供。如果您使用的是较早的版本,请参阅将绘图保存为图像或向量图形文件 (19b)。

    要以编程方式保存绘图,请使用 exportgraphics 函数,该函数是 R2020a 中的新函数。保存的内容会围绕坐标区精确裁剪,尽可能减少留白。所有 UI 组件和相邻的容器(例如面板)都不会包括在保存的内容中。exportgraphics 函数支持三种图像格式(PNG、JPEG 和 TIFF)和三种同时支持向量和图像内容的格式(PDF、EPS 和 EMF)。PDF 格式支持嵌入字体。

    例如,创建一个条形图并获取当前图窗。然后将该图窗另存为 PNG 文件。在本例中,指定每英寸 300 点 (DPI) 的输出分辨率。

    bar([1 11 7 8 2 2 9 3 6])
    f = gcf;
    % Requires R2020a or later
    exportgraphics(f,'barchart.png','Resolution',300)

    如果您指定了扩展名为 .pdf、.eps 或 .emf 的文件名,MATLAB 将根据图窗中的内容存储图像或向量图形。

    您可以通过指定 'ContentType' 名称-值对组参数,来控制文件中包含图像还是向量图形。例如,将当前图窗中的内容另存为包含向量图形的 PDF。

    % Requires R2020a or later
    exportgraphics(gcf,'vectorfig.pdf','ContentType','vector')

    要保存图窗中的多个绘图,请创建一个分块图布局,并将 TileChartLayout 对象传递给 exportgraphics 函数。例如,创建一个 2×1 分块图布局 t。通过调用 nexttile 函数在布局中放置两个坐标区,并在坐标区内绘图。然后网站路径大小写,使用 t 作为第一个参数调用 exportgraphics 函数,将两个绘图另存为一个 EPS 文件。

    t = tiledlayout(2,1);
    nexttile
    plot([0 1 0 1])
    nexttile
    plot([1 0 1 0])
    % Requires R2020a or later
    exportgraphics(t,'twoplots.eps')

    在其他应用程序中打开保存的绘图

    可以在其他应用程序(例如 Microsoft® Word 或 LaTeX)中打开您保存的文件。

    要将绘图添加到 LaTeX 文档,请先使用 exportgraphics 函数将绘图另存为 EPS 文件。然后将 \includegraphics 元素添加到 LaTeX 文档中。例如:

    \documentclass{article}
    \usepackage{graphicx}
    \begin{document}
    \begin{figure}[h]
    \centerline{\includegraphics[height=10cm]{twoplots.eps}}
    \caption{Plots from MATLAB}
    \end{figure}
    \end{document}
    

    另请参阅

    nexttile | tiledlayout | exportgraphics | copygraphics

    相关主题

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论