手搓雷达图(MATLAB)

看下别人做出来什么效果

话不多说,咱们直接开始

Matlab 复制代码
%% 可修改
labels = {'用户等级', '发帖数', '发帖频率', '点度中心度', '中介中心度', '帖子类型计分', '被列为提案数'};
cluster_centers = [0.8, 4.5, 3.2, 4.0, 3.8, 4.5, 4.2;   % 核心用户
                   0.2, 0.5, 0.3, 0.2, 0.1, 0.0, 0.0;   % 边缘用户
                   0.6, 2.0, 2.5, 3.5, 2.8, 1.5, 1.2;   % 积极社交用户
                   0.4, 1.8, 1.0, 1.2, 1.5, 2.0, 1.8;   % 潜在创意用户
                   0.5, 3.0, 4.0, 2.0, 1.8, 3.0, 2.5];  % 积极创新用户

%% 
% 确保雷达图闭合:首尾数据点重复
cluster_centers = [cluster_centers, cluster_centers(:,1)]; % 添加第一列到末尾
labels = [labels, labels(1)];                              % 标签同步扩展

% 计算角度(0到2π均匀分布)
angles = linspace(0, 2*pi, length(labels));
angles(end) = angles(1); % 确保闭合

% 绘制雷达图
figure;
polarplot(angles, cluster_centers(1,:), 'LineWidth', 1.5, 'DisplayName', '核心用户');
hold on;
polarplot(angles, cluster_centers(2,:), 'LineWidth', 1.5, 'DisplayName', '边缘用户');
polarplot(angles, cluster_centers(3,:), 'LineWidth', 1.5, 'DisplayName', '积极社交用户');
polarplot(angles, cluster_centers(4,:), 'LineWidth', 1.5, 'DisplayName', '潜在创意用户');
polarplot(angles, cluster_centers(5,:), 'LineWidth', 1.5, 'DisplayName', '积极创新用户');

% 添加极坐标标签和标题
title('用户聚类中心雷达图');
legend('Location', 'southoutside', 'Orientation', 'horizontal'); % 图例位置

% 添加方向标签(调整文本位置)
ax = gca;
ax.ThetaTick = rad2deg(angles(1:end-1));        % 角度刻度(排除闭合点)
ax.ThetaTickLabel = labels(1:end-1);            % 标签名称
ax.RTickLabel = [];                             % 隐藏半径刻度数值
ax.FontSize = 10;

for i = 1:length(labels)-1
    text(angles(i), labels{i}, 'HorizontalAlignment', 'center', 'FontSize', 10);
end

可能会有一个报错信息,咱们不用管他

看下效果

完美,Over!

相关推荐
rit84324991 小时前
利用随机有限集(RFS)理论结合ILQR和MPC控制蜂群的MATLAB实现
算法·matlab
listhi5202 小时前
基于在线优化的快速模型预测控制(Fast Online MPC)MATLAB实现
开发语言·matlab
机器学习之心2 小时前
基于组合赋权-云模型的码头施工安全风险评价MATLAB
matlab·组合赋权
简简单单做算法2 小时前
基于Q-Learning强化学习的小车倒立摆平衡控制系统matlab性能仿真
算法·matlab·强化学习·qlearning·小车倒立摆平衡控制
leo__5203 小时前
基于Matlab和CPLEX的2变量机组组合调度程序
开发语言·matlab
春日见1 天前
E2E自驾规控30讲:环境搭建
开发语言·驱动开发·matlab·docker·计算机外设
皮蛋瘦肉熬不成粥1 天前
MES(The Measures of Effect Size )工具箱的使用
matlab·概率论
yang_upup2 天前
Matlab里simulink的元器件介绍
开发语言·matlab
机器学习之心2 天前
【信道估计】面向6G的星地融合NTN系统信道估计与多普勒补偿研究附MATLAB代码
matlab·信道估计·多普勒补偿
hoiii1872 天前
Mean Shift目标跟踪算法MATLAB实现
算法·matlab·目标跟踪