找回密码
 注册
关于网站域名变更的通知
查看: 545|回复: 1
打印 上一主题 下一主题

MATLAB绘图:导出矢量图

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-3-1 17:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 piday123 于 2021-3-1 17:46 编辑 1 `. c. `1 e- U' B1 |

% f4 {& E2 P. F% K. M2 z" h  G' m/ X" A3 J6 i; w/ Y: C) C9 x

/ P% z0 U; z) T9 F# O$ V前言 SVG格式 通过MATLAB代码保存矢量图 通过figure窗口的工具栏手动保存矢量图
* y. u5 z8 z) f9 N

% m# U% u0 Y6 l' w; ~) d. Q4 m4 D3 wSVG格式  P- |. W, Z3 g: q' F) n
' F8 `- H! _1 ]/ l$ S$ e  O+ z
SVG是一种图像文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。
* c8 I: d+ B+ B4 g; H
- c. _" D" }" q; ^+ m8 b1 t; X2 l# _% _: l; O& ^
通过MATLAB代码保存矢量图

1 w2 W6 r; O' p+ o; k
. u0 p/ R( K! H7 c* C0 v8 `直接上代码吧,实际上还是用 saveas函数,只不过把保存的格式改成 svg 。这样你要在文章中放入插图时,就插入这个 svg 格式的图片就行。
# k4 ]+ q6 r3 }2 i& x% s! t& z# ]2 j  C7 V3 @/ H% T5 b8 [
  • clc
  • clear
  • close all
  • %%  准备数据
  • %  自变量
  • x = -2*pi-0.01 : 0.01 : 2*pi+0.01;
  • %  两个因变量
  • y1  = sin(x) .* cos(x) .* x.^2;
  • y2 = sin(x) .* cos(x) .* x.^3;
  • %%  可视化
  • %  创建窗口
  • h_fig = figure('Name', '我是矢量图');
  • %  创建坐标系
  • h_ax = axes('Parent', h_fig, ...
  •     'NextPlot', 'add', ...
  •     'Box', 'on');
  • %  使窗口的背景色和坐标系的背景色一样(都是白的)
  • h_fig.Color = h_ax.Color;
  • %  绘制曲线
  • plot(x, y1, 'LineWidth', 1.5, 'Color', 'r');
  • plot(x, y2, 'LineWidth', 2.0, 'Color', 'b');
  • %  加图例
  • legend({'y1', 'y2'})
  • %%  保存成矢量图(SVG、pdf)
  • %  文章的插图用SVG就好,可以插入到 word和ppt中,可以拿浏览器打开
  • saveas(h_fig, h_fig.Name, 'svg')
  • %  也可以保存成pdf
  • saveas(h_fig, h_fig.Name, 'pdf'): o8 N* O  M- k2 ]1 l. S0 m
  R1 C' c; s& H4 g  |  t! Z

' C" w" Z# ^# Q" \7 O9 P+ H  o) }' Y$ U( B: T
Note:最好先通过窗口的 Position 属性调整一下窗口的宽和高,然后再保存,不然有可能结果图看着有点难受。" \- Z* S- @. ?( L% {  y
1 W2 ~0 J# t4 a

. B8 h" t/ y7 }$ A& l通过figure窗口的工具栏手动保存矢量图
4 \0 O# v( }6 N( s9 X" o# U9 c1.文件->导出设置+ U# d9 N9 X) }9 }

  a2 e5 d( W* Y5 b1 y
+ h! p3 O5 Z" t# _
# r. ~+ q6 O0 f: K- j左侧点击渲染->选择向量格式->应用于图窗7 p5 r: e3 S1 U9 m# I

/ R& I. W, j* f' w, h! A7 K, ^& Y5 ~
+ V! i7 k: |, M8 ?) I
! J: e1 |! ]# u* |点击上图中的导出,选择保存格式为 svg6 ~. p( K  G; g1 X
1 {' i% Y0 e$ u9 h$ j
. g( K0 X0 d) {1 r
& q9 P! C$ H' y$ y+ U

/ l8 x- F# X, d: F  x, u5 |. R注意了哈,就算你选择了向量格式,但是保存的类型为:png、jpg、bmp 这些,你把他们放大后照样糊。你只能选择 svg 或者 pdf,用pdf不方便,一般图片都是拿来放到ppt或者word中的(不知道latex能不能放svg,没用过 )。# {1 V, U; u! B% V8 \* D
/ b; S1 y* x1 W; s, M% a+ e
还有就是,如果你选择的是位图,然后导出 svg ,你放大了照样糊。; b, L/ B! ?! d2 W7 F/ {

# g. f0 e; o7 K! u$ @" f2 f7 J* o& e: \% i+ U' ]
0 @: }2 m6 G8 x

7 V9 a% a& r2 C9 o
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2021-3-1 18:22 | 只看该作者
    MATLAB绘图:导出矢量图
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-5 00:38 , Processed in 0.140625 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表