(每日一练)MATLAB绘制一些好看的图

本文介绍了如何使用MATLAB进行数据可视化,包括绘制heatmap热图、带限制条件的网格图以及散点图。在热图部分展示了heatmap函数的用法,网格图部分演示了如何处理限制条件并使用surf函数,散点图则讲解了简单散点图和有序函数散点图的绘制,其中有序函数散点图通过改变点的大小增加了视觉效果。
摘要由CSDN通过智能技术生成

目录

一、绘制heatmap热图

二、绘制带限制条件的网格图

 三、绘制散点图

(1)、简单散点图

 (2)、将散点图用于有序函数


一、绘制heatmap热图

       热图作用就是把一堆数直观的显示出来,然后观察差异性。 调用heatmap()函数进行热图绘制。

源码如下:

clc;clear;clf;
x_name={'x1','x2','x3','x4','x5'};
y_name={'y1','y2','y3','y4','y5'};
z=heatmap(x_name,y_name,rand(5,5));
z.CellLabelFormat = '%0.3f'; %展示精度
% colormap(parula) %换颜色
colormap(summer) %换颜色

效果如下:

想要深入了解热图的小伙伴们可以参考这里

二、绘制带限制条件的网格图

        网格图相信大家都会画吧,重点是会调用meshgrid()函数生成网格点,然后根据相应方程,利用mesh ()或者 surf()绘制网格图。现在需要绘制的是带限制条件的网格图。

源码如下:

clc;clear;clf;
x=0:0.01:0.5;
y=0:0.01:0.8;
[X,Y]=meshgrid(x,y);
Z=X+Y;
Y(Y>=X+0.3)=nan;  %将Y大于等于0.8的数去掉
surf(X,Y,Z)

 三、绘制散点图

         散点图顾名思义,全是点点的图,可以反应一组数据的相关性,应用与回归分析,具体的看看这里。

(1)、简单散点图

        在MATLAB中绘制散点图需要调用scatter()函数,在这里数据的引入,博主使用的是normrnd()函数,随机生成正态分布数据。

源码如下:

clc;clear;clf;
x=[1:1:1000];
y=normrnd(2,3,1000,1);生成均值为2,标准差为3的1000行1列的随机正态分布数据
scatter(x,y)
%x,y必须是同维的数组

效果如下: 

 (2)、将散点图用于有序函数

        实际就是将散点有序化,按照给定函数进行散点绘制

源码如下:


 clc;clear;clf;
 x=linspace(-1,1,100);
 y=x.^3;
 scatter(x,y)
 %plot(x,y,'o')效果同上

        如果只是简单的全部都用相同的圆圈圈表示图的话,不能给视觉带来冲击,所以选择为每个圈圈赋予大小,让它随着横坐标的增大依次变大。

源码如下:


 clc;clear;clf;
 x=linspace(-1,1,100);
 y=x.^3;
 cd = linspace(1,100,100);% cd的长度必须和x的长度保持一致
 scatter(x,y,cd)

 效果展示如下:

 

         本次学习结束了,下次继续学习画一些好看的图,希望大家多多支持!

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值