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');

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

以上。

相关推荐
LDR0061 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术1 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园1 天前
C++20 Modules 模块详解
java·开发语言·spring
xiao5kou4chang6kai41 天前
MATLAB机器学习、深度学习--从数据预处理到模型训练
深度学习·机器学习·matlab·数据预处理
swordbob1 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享1 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.1 天前
C语言--day30
c语言·开发语言
何以解忧,唯有..1 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽1 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下1 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php