Matlab论文插图绘制模板第50期—分簇散点图(Swarmchart)

在之前的文章中,分享了很多Matlab散点图的绘制模板

这一次,再来分享一种特殊的散点图分簇散点图

先来看一下成品效果:

特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到满足大部分期刊以及学位论文格式要求的数据插图。如果觉得有用可以分享给你的朋友


模板中最关键的部分内容

1. 数据准备

此部分主要是读取原始数据

% 读取数据load data.mat

2. 颜色定义

一幅图,如果数据普普通通,那就得靠配色加持了。

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

这里直接使用TheColor配色工具中的Hunt四色配色库

%% 颜色定义C = TheColor('hunt',189);% C = TheColor('hunt',203);% C = TheColor('hunt',603);C1 = C(1,:);C2 = C(2,:);C3 = C(3,:);C4 = C(4,:);

3. 分簇散点图绘制

使用‘swarmchart’命令,绘制未经美化的分簇散点图

ms = 8;s1 = swarmchart(x1,y1,ms,C1,'filled');s2 = swarmchart(x2,y2,ms,C2,'filled');s3 = swarmchart(x3,y3,ms,C3,'filled');s4 = swarmchart(x4,y4,ms,C4,'filled');hTitle = title('Swarm Plot');hXLabel = xlabel('XAxis');hYLabel = ylabel('YAxis');

4. 细节优化

为了插图的美观,对分簇散点图的抖动宽度以及坐标轴属性等进行调整

% 调节抖动宽度xjs = 0.6;set(s1,'XJitterWidth',xjs)set(s2,'XJitterWidth',xjs)set(s3,'XJitterWidth',xjs)set(s4,'XJitterWidth',xjs)% 坐标轴美化set(gca, 'Box', 'off', ...                                       % 边框         'LineWidth',1,...         'XGrid', 'off', 'YGrid', 'off', ...                     % 网格         'TickDir', 'out', 'TickLength', [.01 .01], ...          % 刻度         'XMinorTick', 'off', 'YMinorTick', 'off', ...           % 小刻度         'XColor', [.1 .1 .1],  'YColor', [.1 .1 .1],...         % 坐标轴颜色         'XTick', 1:4,...                                             'YLim',[-3.5 5.5],...         'XTickLabel',{'Samp1';'Samp2';'Samp3';'Samp4'})% 添加上右框线XL = get(gca,'xlim'); XR = XL(2);YL = get(gca,'ylim'); YT = YL(2);xc = get(gca,'XColor');yc = get(gca,'YColor');plot(XL,YT*ones(size(XL)),'color', xc,'linewidth',1)plot(XR*ones(size(YL)),YL,'color', yc,'linewidth',1)% 字体和字号set(gca, 'FontName', 'Arial', 'FontSize', 10)set([hXLabel,hYLabel], 'FontName',  'Arial', 'FontSize', 10)set(hTitle, 'FontSize', 12, 'FontWeight' , 'bold')% 背景颜色set(gcf,'Color',[1 1 1])

设置完毕后,以期刊所需分辨率、格式输出图片。

%% 图片输出figW = figureWidth;figH = figureHeight;set(figureHandle,'PaperUnits',figureUnits);set(figureHandle,'PaperPosition',[0 0 figW figH]);fileout = 'test';print(figureHandle,[fileout,'.png'],'-r300','-dpng');

也可以尝试其他配色:

以上。

完整代码:

Matlab分簇散点图绘制模板

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
分簇散点图是一种数据可视化的图表类型,常用于展示多维数据的聚类结果。它通过将数据点按照其特征进行分组,并在图表中以不同的颜色或形状表示不同的簇,从而帮助我们观察和理解数据的聚类情况。 Echarts是一个基于JavaScript的开源可视化库,提供了丰富的图表类型和交互功能。在Echarts中,我们可以使用其提供的散点图(scatter)来绘制分簇散点图。 要绘制分簇散点图,我们需要准备好数据,并将数据按照簇的标识进行分类。然后,通过配置Echarts的散点图系列(series)的相关参数,如数据、颜色、标记形状等,即可实现分簇散点图绘制。 以下是一个使用Echarts绘制分簇散点图的示例代码: ```javascript // 引入Echarts库 import echarts from 'echarts'; // 准备数据 const data = [ { x: 1, y: 2, cluster: 0 }, { x: 2, y: 3, cluster: 1 }, { x: 3, y: 4, cluster: 0 }, // 更多数据... ]; // 创建Echarts实例 const chart = echarts.init(document.getElementById('chart-container')); // 配置散点图系列 const option = { series: [ { type: 'scatter', data: data, symbolSize: 10, // 标记大小 itemStyle: { color: function (params) { // 根据簇的标识设置颜色 const colors = ['#ff0000', '#00ff00', '#0000ff']; return colors[params.data.cluster]; }, }, }, ], }; // 渲染图表 chart.setOption(option); ``` 通过以上代码,我们可以将数据点按照其所属的簇进行分类,并在图表中以不同的颜色表示不同的簇。你可以根据实际需求,调整代码中的数据和配置参数,以满足自己的分簇散点图展示需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值