Matlab进阶绘图第59期—棒棒糖图

​棒棒糖图本质上是柱状图的一种变体。

棒棒糖图通过在每根柱子顶端添加圆点,以表示数据之间的相对位置

此外,一般还会对每根棒棒糖按数值大小进行排序,从而更加方便阅读

本文利用自制的Lollipop工具进行棒棒糖图的绘制,先来看一下成品效果:


1. 数据准备

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

复制代码
% 读取数据load data.mat% 初始化绘图参数y = 1:length(data);x = data;ylabels = p;

2. 颜色定义

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

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

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

复制代码
% 颜色定义C = TheColor('sci',499);C1 = C(1,:);

3. 棒棒糖图绘制

调用'Lollipop'命令,绘制初始棒棒糖图

复制代码
[s,p,idx] = Lollipop(data,70,C1);yl = ylabels(idx);hTitle = title('Bar with Bubble');hXLabel = xlabel('MeanDecreaseAccuracy');hYLabel = ylabel('Product');

然后再添加一些细节修饰,并输出保存:

以上。

相关推荐
逝川长叹9 分钟前
利用 SSI-COV 算法自动识别线状结构在环境振动下的模态参数研究(Matlab代码实现)
前端·算法·支持向量机·matlab
山上三树9 分钟前
详细介绍 C 语言中的匿名结构体
c语言·开发语言·算法
大猫和小黄10 分钟前
Java开发过程中的各种ID生成策略
java·开发语言·id
繁依Fanyi12 分钟前
从初识到实战 | OpenTeleDB 安装迁移使用指南
开发语言·数据库·python
小罗和阿泽12 分钟前
java [多线程基础 二】
java·开发语言·jvm
小罗和阿泽12 分钟前
java 【多线程基础 一】线程概念
java·开发语言·jvm
橘颂TA18 分钟前
线程池与线程安全:后端开发的 “性能 + 安全” 双维实践
java·开发语言·安全
bruce_哈哈哈22 分钟前
go语言初认识
开发语言·后端·golang
十五年专注C++开发36 分钟前
VS2019编译的C++程序,在win10正常运行,在win7上Debug正常运行,Release运行报错0xC0000005,进不了main函数
开发语言·c++·报错c0x0000005