声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3863|回复: 8

[绘图技巧] 请教关于函数imagesc的问题

[复制链接]
发表于 2008-4-6 17:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在使用imagesc绘制图像时,发现它的纵坐标值是从上至下一直增加的,与我们通常的习惯正好相反,不知各位有没有有什么好的办法使它恢复成我们通常的习惯,即从下至上增加。(我使用的版本是Matlab7.1),谢谢!
回复
分享到:

使用道具 举报

发表于 2008-4-6 17:14 | 显示全部楼层
使用axis('xy');命令就可以了:lol
可以help axis:AXIS XY  puts MATLAB into its default "Cartesian" axes mode.  The
       coordinate system origin is at the lower left corner.  The x
       axis is horizontal and is numbered from left to right.  The y
       axis is vertical and is numbered from bottom to top.

评分

2

查看全部评分

 楼主| 发表于 2008-4-6 17:29 | 显示全部楼层

回复 2楼 的帖子

谢谢楼上的指点,谢谢!
发表于 2008-4-7 10:59 | 显示全部楼层
谢谢2楼
发表于 2010-11-5 11:34 | 显示全部楼层
谢谢二楼~~~~~
发表于 2010-11-5 18:24 | 显示全部楼层
本帖最后由 zhouyang664 于 2010-11-5 22:17 编辑

这样好像还有个问题,如下:
%%%%%%%
load clown
imagesc(X)
colormap(gray)
%%%%%%%
效果如下图:
图1.jpg
axis xy
之后效果:
图2.jpg
发现图像反了!然后我试了这样:
set(gca, 'YDir', 'normal') ;
图像也是反的,仔细思考之后,终于找到了解决办法:
%%%%%%%
load clown
imagesc(flipud(X))
colormap(gray)
axis xy
%%%%%%%
效果如下:
图3.jpg
高手可以指点一二吗?

评分

1

查看全部评分

发表于 2010-11-6 00:06 | 显示全部楼层
本帖最后由 Happy99 于 2010-11-6 00:35 编辑

与图像矩阵的储存有关, 习惯上图像的原点在左上, 而一般绘图的原点在左下, imagesc会特殊处理再绘出
有点好奇楼主的目的, 因为如此好像反而没对应
若一定要如此效果就得加上flipud, 如下
load clown; imagesc(flipud(X)); colormap(gray); axis xy

还有不得不说下楼上几位谢帖的主人, 让人怀疑有没真的试跑过:lol

网页未更新, 不知LS已解决:'(

评分

1

查看全部评分

发表于 2010-11-6 10:18 | 显示全部楼层
回复 6 # zhouyang664 的帖子

感觉比较好玩的是, 语句竟然与LS一个模样!:@)
发表于 2010-12-9 21:29 | 显示全部楼层
  set(gca,'ydir','normal')   这句也可以的
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 13:05 , Processed in 0.079029 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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