700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【Matlab绘图进阶第5弹】Matlab绘制三维散点图

【Matlab绘图进阶第5弹】Matlab绘制三维散点图

时间:2019-06-12 06:35:03

相关推荐

【Matlab绘图进阶第5弹】Matlab绘制三维散点图

散点图又称之为气泡图、主要分为二维散点图与三维散点图、常用于反映数值之间的相对位置、在工科方面常见于机器学习和深度学习分类算法中的特征密度展示。本期为三维散点图绘制、后续会出二维散点图教程。下面来和我一起实现散点图的绘制吧!

成图效果展示

绘图三步走

取色

取色的核心是获取0-1之间的RGB值矩阵、配色的好坏直接决定着图形的颜值高低、论文的门面即是图表。

数据准备

三维散点图的数据主要包括X、Y、Z、ZF三维或者四维度数据矩阵、其中ZF为数据点的特征列、决定颜色深浅与散点大小。

函数使用

三维散点图的函数主要为scatter3、二维散点图函数为scatter。

👉 1. 取色

此次取色步骤和之前取色过程不同、三维散点图需要很多种颜色渐进、即colormap,大小约为n*3的数据矩阵,需要选取两种基础色进行线性插值、具体基础色如下图:

接着对两种颜色进行线性插值、生成n组RGB值,实现一个颜色柱的绘制、从而得到一个完整的色系。生成后的色系图如下:

如上图所示、由两种基础色——完整的色彩柱就生成啦,大小为n*3,并将其保存为mycolor.mat文件用于matlab读取。

👉 2. 数据准备

数据是小编用随机数函数randperm生成的四维度数据,分别为X、Y、Z、ZF,其中前者为三维数据点、后者为数据特征大小与颜色深浅,具体代码如下:

%% 随机生成X,Y,Z数据X = 1:64;Y = randperm(64);Z = randperm(64);ZF = randperm(64)*30;% 散点特征:散点值大小/颜色深浅

👉 3. 函数使用

绘制三维散点图主要函数为scatter、参数分别为X、Y、Z、ZF与颜色矩阵n*3。下面为主要绘图代码:

%% 导入所有颜色矩阵% 颜色文件有8种颜色mapload mycolor.mat;%% 开始绘制三维散点图mycolor_value= mycolor1;figure('color',[1 1 1]);scatter3(X,Y,Z,ZF,mycolor_value,'.');colormap(mycolor_value);colorbar()

接下来是完善坐标区与各个标题信息。

%% 完善图例与坐标区xlabel('X','Fontname','微软雅黑');ylabel('Y','Fontname','微软雅黑');zlabel('Z','Fontname','微软雅黑');title('三维散点','Fontname','微软雅黑');set(gca,'Box','on');ax = gca;ax.BoxStyle = 'full';set(gca,'Xgrid','off','Ygrid','off','Zgrid','off');set(gca,'Linewidth',1.2);

一张完整的三维散点图做好啦、赶快收藏起来吧!

完整代码资料获取方式

Matlab绘制三维散点图资料链接

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。