matlab绘图相关技巧记录

1.matlab fo循环 在一个figure上画图,实时清空上一次绘图

for i =  1:5:1800
    i
    one_view = prj(:,:,i);
    [judge,position] = JudgeView(one_view);
    figure(1);
    hold on;
    h1 = plot(one_view);
    title(['view :',num2str(i)])
    xlabel("channel number");
    ylabel("projection");
    h2 = scatter(position(:,1) ,position(:,2));
    grid on;
    hold off;
    pause(0.5);
    delete(h1);
    delete(h2);
end

2.在三维空间绘制散点时,明明时三维坐标,绘制出来的却是二维的图

原因是,使用了hold on ; hold off

    waterTemp = LwAll(:,:,viewIndex);
    alTemp = LmAll(:,:,viewIndex);
    OnePrj = prj(:,:,viewIndex);
    
    counter = 1;
    point = [];
    for i = 1:size(OnePrj,1)
        for j = 1:size(OnePrj,2)
            if(waterTemp(i,j) ~=0 || alTemp(i,j) ~= 0)
               point(counter,:) = [waterTemp(i,j),alTemp(i,j) ,OnePrj(i,j)];
               counter = counter +1;
            end
        end
    end
% %     Lw = reshape(waterTemp,[N_CHANNEL*16,1]);
% %     Lm = reshape(alTemp,[N_CHANNEL*16,1]);
% %     PrjValue = reshape(OnePrj,[N_CHANNEL*16,1]);
    
    figure(1);
    hold on;
    scatter3(point(:,1),point(:,2),point(:,3),'b*');
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值