收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

【MATLAB】输出图片内容部分丢失以及quiver的绘图问题

[复制链接]
1.      有关matlab图片输出的问题! [. h, o' `* L% I
最近在用matlab2017a绘图时,发现print的图片有部分内容丢失,比如marker图案残缺,通过修改set(gcf,’paperposition’,[0 0 12 6])里的参数发现没有什么改变,通过多次尝试,发现问题出在print的设置里边,常用格式print(‘.\figs\pic’,’-dpng’,’-r350’),问题就出在后边的’-r350’分辨率的设置上,当设置为’-r300’时,问题就会得到解决。
/ X2 z. I7 T' M/ |6 H9 x1 M, n' D
# `! t9 \& v- W& a- y. g& x
3 Y4 ]. P5 ?1 |" L0 v$ o. M2.      有关quiver的绘图问题4 X4 l6 ^8 W% [; x7 H  R; \
在用quiver绘制流速矢量时间序列时,发现quiver的参考矢量与流速矢量并不是一一对应,绘制出的箭头长短大小及方向与实际的流速矢量有一定的偏差,如何解决这种偏差问题,是每次用到quiver命令时都要面对的问题。最近绘图再次遇到流速矢量的绘制,多次碰到这样的问题让我无能为力地认为quiver也许只能大概地表现流速的方向,而大小却不能按实际的表现出来。这次我又进行了新的尝试,由于时间序列对应的横坐标的长度往往要大于纵坐标,所以quiver之后表现出的会有变形的现象。我们都知道,如果xy轴刻度大小都是相同的,那么画出的箭头和实际的是完全对应的。所以,根据这个原理,如果时间序列对应320个点,那么y轴表示范围可以在160(即x轴点数的一半)的周围取数,比如在100~200的范围内,然后在输出图片时,设置图片的输出比例。比如,有三个时间序列,对应y轴的位置120,160,220,设置ylim([100 260]),若x轴的点数为320,那么set(gcf,’paperposition’,[0 0 12 6])12/6x轴与y轴的比值,然后输出图片。上述问题的解决方法只是经验之谈,可以参考,如果有更好的解决方法,欢迎交流学习。7 _/ U4 n. L  [4 b

2 w+ P  w$ P" _4 a# m
( a9 }1 R4 b0 D' g                    ' N7 _4 S: i3 ~% \$ v& R% p
: _) X/ `$ R0 X0 F
                                        转载本文请联系原作者获取授权,同时请注明本文来自叶瑞杰科学网博客。
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
黄金品质
活跃在2021-12-8
快速回复 返回顶部 返回列表