爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 23618|回复: 40

[程序设计] matlab用什么函数做如下的图

[复制链接]

新浪微博达人勋

发表于 2012-10-29 15:04:16 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 yang_amy08 于 2012-10-30 20:03 编辑

时间高度图

时间高度图

图中横坐标是时间,纵坐标是高度,填色图值为另一变量。我用image函数画过,但与横纵轴不对应,需用怎么改,或用其他函数作图。求高手解答。

imagesc的图

imagesc的图

上图是用imagesc()画相同的数据画出的结果,不明白是怎么回事,pcolor结果也跟这个差不多


pco

pco

con

con
我只截取白天的数据根据大家提供的方法做了图,左图是meshgrid后使用pcolor函数画的,右图是使用contouf函数画的,要怎样才能将右图的数据填图的颜色改的和第一张图差不多呢?求解,谢谢大家



密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-11-4 15:06:24 | 显示全部楼层
本帖最后由 ShaG 于 2012-11-4 15:11 编辑

我先说下自己的想法:

(1)imagesc/image这两个函数是图像处理时用的,通常用来显示像素(像素是无符号整型数unit8),你直接用它来画原始数据,这个函数会把输入数据强制转换为unit8,就应该是你看到大片蓝色的原因(NaN, 小于1的数全部变成0了),另外,这两个函数画图是倒着画的,这也和像素文件有关系,有兴趣可以看看

(2)pcolor这个函数能完整的显示格点数据,但你画出来的全是黑的————
————因为你的数据非常密集又没有取消网格线,正确用法如下

Handle=pcolor(x, y, grid);
set(Handle, 'LineStyle', 'none')


我非常肯定你要画的图是pcolor画出来的,如果你的数据正常,pcolor能够完成任务
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

新浪微博达人勋

发表于 2012-10-29 15:07:08 | 显示全部楼层
用pcolor(x,y,z),你的横纵坐标x,y必须是格点化之后的,用meshgrid命令
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-29 15:14:09 | 显示全部楼层
imagesc()应该可以吧
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-10-29 15:22:05 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-29 17:15:21 | 显示全部楼层
yang_amy08 发表于 2012-10-29 15:22
pcolor()函数我画过,但什么结果都没有,图片一片黑

一片黑?我一直用的pcolor啊,你数据是雷达数据吗?x,y坐标都已经格点化了么?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-29 17:22:59 | 显示全部楼层
yang_amy08 发表于 2012-10-29 15:22
pcolor()函数我画过,但什么结果都没有,图片一片黑

我之前遇到过这样的情况,数据大概是这样的[-999 -999 1 2 3 4 -999],其中-999其实是错误的测量值,需要在画图之前将这些值去掉,设置为NaN,然后再画图。如果包含-999的矩阵画出来的图,matlab也会给这些值赋予颜色,掩盖掉正确的值的颜色。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-29 18:10:37 | 显示全部楼层
pcolor的话,你的数据格式也必须是个矩阵格式
http://bbs.06climate.com/forum.php?mod=viewthread&tid=8414
这种图叫时序图
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-30 14:44:35 | 显示全部楼层
这个是激光雷达的数据吧?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-30 15:30:19 | 显示全部楼层
yang_amy08 发表于 2012-10-29 15:22
pcolor()函数我画过,但什么结果都没有,图片一片黑

在你的pcolor()语句后面加 shading flat 试试。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-30 14:18:55 | 显示全部楼层
你上下图的数据是一个么?如果是的话不应该出现全是蓝色的情况啊,除非你下面图的数据值都比较低才出现这种情况
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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