matlab数据可视化总结,matlab干货总结(三)基础学习篇之数据可视化

数据可视化篇:

一.图形绘制

1.离散型

点根据函数形成的图像,图像问题大家最好动手做一做,这样学得会很快。

X1=[1 2 4 6 8 10 11 12 14 16 17 18 20];

Y1=[1 2 4 6 8 10 10 8 7 6 4 2 1];

figure(1)

plot(X1,Y1,'o','MarkerSize',15) %数字代表标记点大小

X2=1:20;

Y2=log(X2);

figure(2)

plot(X2,Y2,'o','MarkerSize',15)

图像1

3898c6eab59f87611143eab8e3cd1b77.png

图像2

56ba790ecc7ba967f0db262400769f0a.png

2.连续型

X1=(0:12)*pi/6;Y1=cos(3*X1);

X2=(0:360)*pi/180;Y2=cos(3*X2);

figure(1)

subplot(2,2,1);plot(X1,Y1,'o','MarkerSize',3);xlim([0 2*pi])

title('图1')

%补充:subplot:在平铺位置创建坐标区

% subplot(m,n,p) 将当前图窗划分为 m×n 网格,并在 p 指定的位置创建坐标区

% xlim 设置或查询 x 坐标轴范围

subplot(2,2,2);plot(X1,Y1,'LineWidth',2);xlim([0 2*pi])

title('图2')

subplot(2,2,3);plot(X2,Y2,'o','MarkerSize',3);xlim([0 2*pi])

title('图3')

subplot(2,2,4);plot(X2,Y2,'LineWidth',2);xlim([0 2*pi])

title('图4')

02f56741217a6f7cafb073704ac7a08c.png

二.二维绘制

x=0:0.01*pi:pi*0.5;y=cos(x)+sqrt(-1)*sin(x);

plot(y*2,'r','LineWidth',5);hold on; %hold on在之前图像基础上不刷新,直接接下面的

x=pi*0.5:0.01*pi:pi;y=cos(x)+sqrt(-1)*sin(x);

plot(y*2,'y','LineWidth',5);hold on;

x=-pi:0.01*pi:-pi*0.5;y=cos(x)+sqrt(-1)*sin(x);

plot(y*2,'b','LineWidth',5);hold on;

x=-pi*0.5:0.01*pi:0;y=cos(x)+sqrt(-1)*sin(x);

plot(y*2,'g','LineWidth',5);hold on;

title('极坐标系'); %text 在图上写字

text([1.5 -3 1.5 -3],[2 2 -2 -2],{'第一象限','第二象限','第三象限','第四象限'})

legend({'[0 0.5\pi]','[0.5\pi \pi]','[\pi 1.5\pi]','[1.5\pi 2\pi]'}) %右上角标签

xlim([-5 5]);ylim([-5 5]);% 自己做xy轴

plot([-4 4],[0 0],'k','LineWidth',3);hold on;

plot([0 0],[-4 4],'k','LineWidth',3);hold on;

axis off %取消坐标轴标签及背景

e07c4f79592178059f92200d3730e95b.png

1.fplot指令

此指令就是用matlab里面自带的函数等算法来绘制图像

clear all %清楚显示的执行过程数据

clc

fplot(@sin,[-2*pi 2*pi])

grid on %显示网格

title('sin(x) from -2\pi to 2\pi')

xlabel('x');

ylabel('y');

513fb961088ebd49b05682e8e5fb12d2.png

2.bar函数

补充:colormap(map)查看并设置当前颜色图,对于颜色如下

bfc473e1a2a052dc39f1bf3732065626.png

x=-2:2;

Y=[6 8 7 4 5;4 8 1 12 0;4 6 21 1 3];

subplot(1,2,1),bar(x',Y','stacked') %垂直直方图

xlabel('x'),ylabel('\Sigma y'),colormap(cool) %colormap查看并设置当前颜色图

legend('因素1','因素2','因素3')

subplot(1,2,2),bar(x',Y','grouped') %水平直方图

xlabel('y'),ylabel('x')

bb25f9b30df1937e9088cd573d645127.png

3.pie函数

pie(X,explode) 将扇区从饼图偏移一定位置。

补充:explode 是一个由与 X 对应的零值和非零值组成的向量或矩阵。pie 函数仅将对应于 explode 中的非零元素的扇区偏移一定的位置。

%2D图像

x=[1 5 0.5 3.5 2];

explode = [0 1 0 0 0];

pie(x,explode)

colormap jet

730f9e8a8a814ccd465ff65bae19b995.png

%3D图像

x=[1 5 0.5 3.5 2];

explode = [0 1 0 0 0];

pie3(x,explode)

colormap hsv

94e594bcb0d48183abb5899eac43ee94.png

4.hist函数

直方图

x=-4:0.1:4;

y=randn(5000,1);

hist(y,x)

a054d9bf4049c80508cc8195a029f343.png

5.scatter函数

散点图

scatter(x,y,sz,c,'filled')    ----sz指定圆的大小;c指定颜色;filled填充圆圈

clear all

figure;

x=[1 5 6 7 9 5 1 3 12 20];

y=[20 15 6 3 1 5 3 0 1 5];

subplot(1,2,1);

scatter(x,y);

title('散点图')

subplot(1,2,2);

scatter(x,y,[],[1,0,0],'fill')

title('散点图-填充')

b447d27337b445e4c22fa3a2e633e686.png

三.三维绘制

1.网格图

meshgrid生成格点矩阵

clear all

X=-10:0.1:10;Y=-10:0.1:10;

[X,Y]=meshgrid(X,Y);

Z=-X.^2-Y.^2+200;

mesh(X,Y,Z)

title('网格图')

4e5f7f38367cd9044f1ffc4becf5c582.png

2.曲面图

surf指令完成;mesh指令绘制是网格划分曲面图,surf得到平滑着色的三维曲面图

peaks 是从高斯分布转换和缩放得来的包含两个变量的函数

[x,y,z]=peaks(25);

figure

surf(x,y,z)

mesh(x,y,z)

6c0263d18da4821776ca71baae512a12.png

3.光照模型

figure

surf(X,Y,Z,'FaceColor','red','EdgeColor','none');

camlight left;lighting phong

view(-15,65)

2fbae135cfa60e9b59e5ca6605b66789.png

四.四维可视化

[x,y,z]=peaks(30);

r=sqrt(x.^2+y.^2);

subplot(1,2,1);surf(x,y,z,z);

axis tight %数据范围直接设定为坐标范围

subplot(1,2,2);surf(x,y,z,r);

axis tight

1f13db67e51868c8825fa60017f5f11e.png

四维简单举个例子,不是很难理解。

可视化部分也很简单,主要的几个函数指令运用好就可以了。

本人尚才疏学浅,如内容中有任何错误的地方,望告知,我会加以修改,之后会继续更新。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值