当前位置: 首页 > news >正文

Matlab进阶绘图第6期—雷达图/蜘蛛图/星图

雷达图(Radar Chart),又称星图、蜘蛛图、蜘蛛网图、网络图、Kiviat图等,是一种以从同一点开始的轴上表示的三个以上变量的二维图表的形式,来显示多变量数据的图形方法。

雷达图可以直观地对多维数据集目标对象的性能、优势及关键特征进行展示,因此在一些顶级期刊中也能看到它的身影,比如《Nature》:

由于Matlab中未收录雷达图的绘制函数,因此需要大家自行设法解决

本文通过改进Moses的spider_plot工具(MATLAB Central,2022),制作了spider_plot_k雷达图绘制工具,从而进行雷达图的绘制,先来看一下成品效果:

特别提示:本期内容『数据+代码』已上传资源群中,加群的朋友请自行下载。有需要的朋友可以关注同名公号 阿昆的科研日常,后台回复关键词【绘图桶】查看加入方式


1. 数据准备

此部分主要是读取原始数据,并初始化绘图参数

% 读取数据load data.mat% 初始化参数dataset = P;lbs = {'Yield strength',...       'Ultimate tensile strength',...       'Elongation to fracture',...       'UTS×EF',...       'Saturation induction',...       'Coercivity',...       'Electrical resistivity'};lgs = {'M-MCA','Fe-49Co-2V','Fe-78.5Ni','Fe-4Si'};

2. 颜色定义

作图不配色就好比做菜不放盐,总让人感觉少些味道。

但颜色搭配比较考验个人审美,需要多加尝试。

这里直接使用TheColor配色工具中的SCI权威配色库

%% 颜色定义map = TheColor('sci',1796);C = map(1:4,:);

获取方式:公众号(阿昆的科研日常)后台回复 TC

3. 雷达图绘制

利用‘spider_plot_k’工具,绘制初始雷达图

spider_plot_k(dataset,...    'AxesLabels', lbs,...                                  % 角度坐标标签    'AxesLabelsEdge', 'none',...                           % 角度坐标标签边框    'AxesLabelsOffset',0.2,...                             % 角度坐标标签偏移量    'LabelFontSize',12,...                                 % 角度坐标标签字号    'AxesLineStyle','--',...                               % 角度坐标轴线型    'AxesLineWidth',0.5,...                                % 角度坐标轴线宽    'AxesDisplay', 'one',...                               % 半径坐标刻度    'AxesLimits', [1,1,1,1,1,1,1;10,10,10,10,10,10,10],... % 半径坐标范围    'AxesPrecision', 0,...                                 % 半径坐标刻度值精度    'AxesFontSize',11,...                                  % 半径坐标标签字号    'AxesInterval', 4,...                                  % 半径坐标轴线数    'AxesHorzalign','center',...                           % 半径坐标标签水平对齐模式    'AxesVertalign','bottom',...                           % 半径坐标标签垂直对齐模式    'BackgroundColor','none',...                           % 背景颜色    'Color', C,...                                         % 线颜色    'LineWidth', 1.5,...                                   % 线宽    'Marker', {'v', 'o', '^', 's'},...                     % 符号类型    'MarkerSize',50,...                                    % 符号尺寸    'FillOption', {'on', 'on', 'on', 'on'},...             % 是否填充    'FillTransparency', 0.12);                             % 填充透明度

4. 细节优化

为了插图的美观,对坐标轴细节等进行美化。设置完毕后,以期刊所需分辨率、格式输出图片即可:

%% 图片输出exportgraphics(figureHandle,'test.png','Resolution',300)

以上。

http://www.lryc.cn/news/37476.html

相关文章:

  • Javascript的ES6 class写法和ES5闭包写法性能对比
  • 探秘MySQL——全面了解索引、索引优化规则
  • 战斗力最强排行榜:10-30人团队任务管理工具
  • 2023-03-09干活小计
  • 基数排序算法
  • 项目实战典型案例24——xxljob控制台不打印日志排查
  • 旋转框目标检测mmrotate v1.0.0rc1 之RTMDet训练DOTA的官方问题解析整理(四)
  • 4个顶级的华为/小米/OPPO/Vivo手机屏幕解锁工具软件
  • 华为OD机试题 - 和最大子矩阵(JavaScript)| 机考必刷
  • 企业电子招标采购系统源码之项目说明和开发类型
  • Python高频面试题——装饰器(带大家理解装饰器的本质)
  • 全方位解读智能中控屏发展趋势!亚马逊Alexa语音+Matter能力成必备
  • JAVA练习74-括号生成
  • Java ORM开发 更全面的应用场景
  • SpringBoot【基础篇】---- 基础配置
  • 手机磁吸背夹散热器制冷快速方案
  • 青岛OJ(QingdaoU/OnlineJudge)部署如何直连数据库批量修改
  • 渗透测试——信息收集(详细)
  • 什么是谐波
  • 技术报告:程序员如何开发一个商城型购物网站
  • DPDK系列之八虚拟化virtio
  • 直播间与2位优秀创作者分享经历
  • linux上快速安装 Flarum 指南
  • 数学不好,英语不行,非本专业,可以学IT吗?
  • 软件测试13
  • React(八):引出Hook、useState、useEffect的使用详解
  • 32*4VKL128 LQFP44超低功耗/超低工作电流/抗干扰LCD液晶段码驱动IC/LCD驱动芯片(IC) 适用于激光/红外线测距仪
  • 自定义控件(?/N) - 事件分发
  • 诗一样的代码命名规范
  • L1-010 比较大小 L1-030 一帮一 L1-015 跟奥巴马一起画方块 L1-035 情人节