MATLAB 矩阵的NAN值怎么删+绘图颜色设定

目录

问题

方法1

方法2

 矩阵删NaN?


问题

Matlab中使用函数imagesc、contourf等显示图像时,矩阵中存在的nan值会显示为最小值颜色(蓝色)。如下图蓝色为nan值。想将蓝色表示为白色。

 

这样的颜色可能存在误导性,那么如何将这种NaN处的值设置为空白色

方法1

使用下列代码(其中U为变量,Figure1为作图,替换即可)

Figure1=imagec(U)
set(Figure1,'alphadata',~isnan(U));

方法2

  1. 右击colar bar(颜色条),选择颜色图编辑器
  2. 双击最左侧蓝色标签
  3. 选择标记颜色——白色

最后,成图就出来啦

 矩阵删NaN?

当然有小伙伴也可能会问,如果一个矩阵中含有NaN,想指定删除该部分(使其变为0)

注意,含有NaN的矩阵,其函数是特殊的,如Matlab中自带的函数nansum(求和)、nanmean(平均)、nanstd(标准偏差),在去nan数据的情况下,就可以完成求和、平均、标准偏差的操作。

代码:

for i=1:m
for j=1:n
    if ~isnan(U(i,j))
        U(i,j)==0;
end
end
end

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_29216209

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值