24小时热门版块排行榜    

查看: 2069  |  回复: 4

yanghua011

银虫 (小有名气)

[求助] 在Matlab中使用plot()画double型数据的图 已有1人参与

下面是我的程序
format long
x=[340 360 380 400 420 440 460 480 500 520 540 560 580 600];
y=[-19307.73869 -19308.28144 -19308.45342 -19308.49818 -19308.47109 -19308.56417 -19308.62869 -19308.72244 -19308.83551 -19308.94091 -19309.37948 -19309.47514 -19309.57682 -19309.66334];
plot(x,y,'--rs');
grid on
将y显示出来也是双精度的,可是使用plot画出来时且是如下图的样子,如图第六个点的纵坐标为 -19308.56417,而图像上面的却小于19309了。我觉得应该是画图过程中四舍五入了,请问该怎么弄才能显示正常的值。

在Matlab中使用plot()画double型数据的图
KXB9VEE%0HC1J0D`G9UG`5M.jpg
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

学习
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
yanghua011: 金币+10, ★★★★★最佳答案, 已经解决,谢谢。 2014-05-15 14:44:10
点图上面的的箭头,进入图片属性编辑器(property editor) -> More Properties -> YTickLabel,右边编辑里面把这个修改成你需要的样式即可,matlab自动将其进行指数化了~~
What would Jesus do?
2楼2014-05-14 21:04:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yanghua011

银虫 (小有名气)

引用回帖:
2楼: Originally posted by dnp at 2014-05-14 21:04:47
点图上面的的箭头,进入图片属性编辑器(property editor) -> More Properties -> YTickLabel,右边编辑里面把这个修改成你需要的样式即可,matlab自动将其进行指数化了~~

谢谢你的回答,但我的问题是数组y的值,在图像上面表述的不准确。数值y的第六个值为-19308.56417,而从图像上看这一点的值是小于-19309了。这个该怎么弄。
学习
3楼2014-05-14 22:04:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dnp

荣誉版主 (知名作家)

小木虫浪子

优秀版主

引用回帖:
3楼: Originally posted by yanghua011 at 2014-05-14 22:04:32
谢谢你的回答,但我的问题是数组y的值,在图像上面表述的不准确。数值y的第六个值为-19308.56417,而从图像上看这一点的值是小于-19309了。这个该怎么弄。...

matlab默认采用指数表示法,你可以手动设置成为-19308.5,这样就显示完整的数了
What would Jesus do?
4楼2014-05-14 22:40:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bashan

禁虫 (正式写手)

本帖内容被屏蔽

5楼2014-05-18 00:15:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yanghua011 的主题更新
信息提示
请填处理意见