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

MATLAB绘图:导出矢量图

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 piday123 于 2021-3-1 17:46 编辑 : i. @6 ~* [$ X& c3 O  o& g$ t

5 x  u6 @8 b8 }+ ]
% u5 r/ W. ?/ I& A2 w! ^

- c9 B; |$ B; G5 G9 Y/ U前言 SVG格式 通过MATLAB代码保存矢量图 通过figure窗口的工具栏手动保存矢量图- s0 ^9 h. @' L3 q
' V$ H4 s" o: C3 ?* U1 |
SVG格式
0 Z" I  T8 E% J" V  |  n; i! e6 l
SVG是一种图像文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)联盟进行开发的。严格来说应该是一种开放标准的矢量图形语言,可让你设计激动人心的、高分辨率的Web图形页面。用户可以直接用代码来描绘图像,可以用任何文字处理工具打开SVG图像,通过改变部分代码来使图像具有交互功能,并可以随时插入到HTML中通过浏览器来观看。1 U7 Z9 d" @% P0 z; \
3 c( _7 p; y% f4 M
# A- ?  x$ M" e5 y: e. P# M/ k
通过MATLAB代码保存矢量图

; W# {- p* Q, j* d- l
+ J7 ~) U  |3 Y" X直接上代码吧,实际上还是用 saveas函数,只不过把保存的格式改成 svg 。这样你要在文章中放入插图时,就插入这个 svg 格式的图片就行。! B4 t- j9 ]! ^! \

' H2 b) \/ H$ v0 f6 U
  • 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')
    ; h7 H- ~3 S. k4 I. K) b1 P

# j5 x+ R& `+ ^1 w- Z. Y- \; z/ c- e) {1 l8 a4 R+ K. t3 |4 X+ `
! b! C8 P; \- B6 `& |7 B
Note:最好先通过窗口的 Position 属性调整一下窗口的宽和高,然后再保存,不然有可能结果图看着有点难受。
; G6 a; f# M& Y9 V
; D0 D7 W( H; O; x6 j! ]- r" n) i5 S- @8 e, X( d  R5 k! U8 |. m
通过figure窗口的工具栏手动保存矢量图- O- Q$ g# l; q' e0 Z, W" n7 T
1.文件->导出设置2 V& l6 g* T, u( v6 U& W

. r/ T, h4 P, i  q7 G ' j% p' \' ^9 o9 Q2 @$ K5 R: X/ f
! t4 f& I( F0 h- ]" G* M' a6 P
左侧点击渲染->选择向量格式->应用于图窗( j' s7 y  \7 a1 E
1 r  n: u- a0 @

3 q) j5 t* V( B% ~( B3 m( v. ~
, L4 t& `0 U8 ^4 N/ z! {点击上图中的导出,选择保存格式为 svg5 n! F" r$ {: ?3 x
: A2 Q  K4 T9 B& M
% s- R. A. E+ W- s  i
7 W. @$ c0 s$ U+ X

6 y4 B! {4 B; Y4 L  R( L1 |注意了哈,就算你选择了向量格式,但是保存的类型为:png、jpg、bmp 这些,你把他们放大后照样糊。你只能选择 svg 或者 pdf,用pdf不方便,一般图片都是拿来放到ppt或者word中的(不知道latex能不能放svg,没用过 )。
: z$ d- N' d# A: q" J! [* H3 t2 H/ m9 v0 [) K( ~6 M  p
还有就是,如果你选择的是位图,然后导出 svg ,你放大了照样糊。
, N. z' Q! E) k$ D8 N& L) s/ v8 _
9 {0 Y5 l: w" b8 c2 X, G/ P8 I. Q  r6 W' n3 h
8 Q* Z3 }- D# g( e- `! e
3 H! n# M7 U- k9 x
  • 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-10-31 19:00 , Processed in 0.140625 second(s), 27 queries , Gzip On.

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

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

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