Matlab进阶绘图第9期 |
您所在的位置:网站首页 › labview三维模型 › Matlab进阶绘图第9期 |
三维聚类散点图是一种特殊的三维特征渲染散点图。 三维聚类散点图通过一定的聚类、分类方法,将特征相近的离散点划分到同一个类别中,进而将每个离散点赋予类别标签,并利用不同的颜色对不同的类别进行区分。 由于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 6323. 三维聚类散点图绘制 利用‘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 |