Matlab进阶绘图第9期

您所在的位置:网站首页 labview三维模型 Matlab进阶绘图第9期

Matlab进阶绘图第9期

2023-03-22 21:15| 来源: 网络整理| 查看: 265

三维聚类散点图是一种特殊的三维特征渲染散点图。

三维聚类散点图通过一定的聚类、分类方法,将特征相近的离散点划分到同一个类别中,进而将每个离散点赋予类别标签,并利用不同的颜色对不同的类别进行区分。

由于Matlab中未收录三维聚类散点图的绘制函数,因此需要大家自行设法解决。

本文使用自己制作的groupedscatter3小工具进行三维聚类散点图的绘制,先来看一下成品效果:

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

1. 数据准备

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

% 读取数据A = load('data.txt');% 初始化参数X = A(:,1);Y = A(:,2);Z = A(:,3);L = A(:,7);lgs = {'Powerline','Low vegetation','Impervious surfaces','Car',...'Fence/Hedge','Roof','Facade','Shrub','Tree'};

2. 颜色定义

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

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

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

%% 颜色定义C = TheColor('sci',612); % 503 612 617 632

3. 三维聚类散点图绘制

利用‘groupedscatter3’工具,绘制初始三维聚类散点图。

groupedscatter3(X,Y,Z,L,C)view(-27,27)

4. 细节优化

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

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

以上。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3