Matlab批量画图:显示频数统计信息的热力图

有些网友对我的代码提出了一些疑问,现在我将输入参数的数据格式贴图给大家看一下。

f_name,是我读入数据的名称,因为我要做到对这些轨迹结果图进行批量命名(按日期的),用到的网友可以把这个输入参数去掉即可。

画出轨迹图片的可视化。

下面我要对信息统计之后,画出轨迹的频数热力图,代码如下所示。

function [x,y,z] = visualization(tick_x,tick_y,tick_z,x_n,y_n,V)
% 此程序是对立方体中存储轨迹数据的频数进行可视化




% meshgrid 生成三维网格
[x,y,z] = meshgrid(tick_x,tick_y,tick_z);

% % 三维体切片平面
% cube = slice(x,y,z,z,tick_x,tick_y,tick_z);

% 用cat函数读取一列
frequency = cat(1,V.points);

% 最大频数
max_frequency = max(frequency);

% 控制不同频数的小立方体的颜色变化
% 控制颜色变化的条应该是10份(几份除以几)
% unit = max_frequency/10;


% 调用str_split函数
all_digital = string_split(V);

%%%%%%%%%%%%%%%% 显示三维立方体部分代码

% 按z轴进行切片,因为z轴长度较短,容易切片
for i =1: length(tick_z)
    
    % 打开一个新窗口
    % figure;
    
    % 字符串匹配
    % temp_i = num2str(i);
    
    % 索引
    index = [];
    % 检查此切面中的小立方体的频数,返回存储这些频数的索引index
    for k = 1:length(all_digital)
        if all_digital(k) ==i
            index = [index k];
        else
            continue
        end
    end
    % 取出这个切面中存储点的所有小立方体和其频数
    segment = V(index);
    save segment
    
    % 将有频数的小立方体上色,频数越大越黑
    % 创建矩阵
    % map = zeros(x_n-1,y_n-1);
    map = zeros(x_n,y_n);
    for j = 1:length(segment)
        
        % 将频数值存入相应的矩阵中
        a = segment(j).shape;
        len_a = length(a);
        
        if mod(len_a,2) == 0
        
            b = a(1 : len_a-1);
            
            if b == 3
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值