近来看了些MATLAB,主要是数据可视化部分,顺手记了些东西。没有多细致,只希望用的时候有个目录式的参考。
------------------------------------------------------------------------------------------------------------------------------
MATLAB 数据可视化笔记
-二维图形
--plot函数
plot(x,"NAME",VALUE,...)-x为二维数组时,以各列分别成图,下标为横轴,值为纵
plot(x,y,"NAME",VALUE,...)-x为一维,y为二维,y的某一维和x有相同维数时,另一维为曲线条数,x为横坐标
plot(x1,y1,x2,y2,"NAME",VALUE,...)
x为不同类型值(维数、复数)的时候得到的图形情况不同
eg:
subplot()-建立坐标系--一幅图中建立N个区域
plot()-绘图
axis([x1,x2,y1,y2])-标定坐标范围----axis square--正方形图形
xlabel('NAME')-横轴的名称
ylabel('NAME')-纵轴的名称
titile('')-
grid on--添加网格
--线型、标记等
颜色、标记、线型
''中表示
hold on-支持统一坐标轴图中两个图形
legend('','','')-添加图注
--坐标轴
axis----P-152
normal
equal
image fill
box off--取消边框
tight-范围为数据范围
底层的get和set命令--gac为坐标轴的句柄对象
set(handle,'porpertyname')
XScale-对坐标轴进行变换
XDir-坐标轴的位置
XGrid-'on'或'off'
可以用semilogx和semilogy函数将坐标轴转化为对数刻度
--多图形叠绘
hold on/off
hold 在两个命令之间切换
close关闭图形窗口
clf擦出而不关闭
--子图
subplot
--交互式绘图和屏幕刷新
legend-生成图例框
ginput-通过鼠标读取坐标
--plotyy函数绘制双坐标轴
--easy命令
使用函数句柄
fplot(handle,[min,max])------handle=@(x)function((x))
ezplot(f,[min,max])----ezplot(f)-在[-2pi,2pi]区间
ezpolar---同时那个,只是极坐标下
-三维图形绘制
--曲线图
plot3(x,y,z,'NAME',VALUE)
eg:
plot3(x,y1,z1,'r*',x,y2,z2,'bp',x,y3,z3,'mx');
--网格图
mesh(z)--以矩阵z的列和行为x轴和y轴的自变量绘制网格
mesh(x,y,z)--x,y为自变量矩阵,z为建立在x,y之上的函数
mesh(x,y,z,c)--指定了z在各点的颜色矩阵
--在默认情况下,grid是打开的
meshc--函数在三位曲线之下画等值线
meshz--函数增加边界绘图功能
--曲面图
surf使所有网格都填充颜色
-平面阴影--shading flat
-插值阴影--shading interp
-遮挡属性--通过筛选坐标值
----加等值线等同以上
--等值曲线图
---2维等值曲线
contour(z)----z表达的等值线
coutour(z,n)----n为的等值线数目
coutour(z,v)----v为等值线数值
[c,h]=contour(...)----c为等值线矩阵,h为等值线句柄
-四维图形绘制
--slice切片命令
用于显示切面等
slice(V,sx,sy,sz)----绘制V=V(x,y,z)确定的函数在三个方向的切片,数目由sx,sy,sz确定
slice(X,Y,Z,V,sx,sy,sz)
slice(V,XI,YI,ZI)----XI,YI,ZI确定平面,切片
silce(...,'method')----指定切片的内插值方法:liner,cubic,nearest
--其他slice命令
contourslice----显示等值线
streamslice----流线切面
--等值面
通过isosurface函数返回若干三角形顶点值-->传递给patch函数构成等制图
-复数变量图形的绘制
--cplxmap,cplxgrid,cplxroot--实部为高度,虚部为颜色
--cplxgrid函数生成一个复数矩阵,维数为(m-1)*(2m-1),极径为[0,1],极角为[-pi,pi]
-特殊图形的绘制
--area区域绘图
area和plot绘制的图形相似
plot只是对线条进行加色,area要对线之下的部分进行加色
--pie饼图绘制
pie和pie3分别绘制二维和三维图
pie(x)----x的每一部分是饼图的一部分
pie(x,explod)----explod和x是同维数组,如果explod中有非零元素,相关饼图突出
pie(...,labels)----labels用于标示扇形
--直方图和梯形图
bar和bar3函数绘制直方图
barh和barh3绘制水平方向条形图
bar(y)----为一维数组y每个元素绘制一个条形
bar(x,y)----在横坐标x上绘制直方图y,x的元素严格按照递增排列
bar(...,width)----参数width用于设置直方图条形的相对宽度和之间距离
bar(...,'style')----条形形状,group,stack,detached
--矢量分布图形
quiver(x,y,u,v)----x,y所指定的位置用箭头代表矢量方向,u,v是对应点处的速度分量--维数相同
quiver(u,v)
quiver(...,scale)----可以设定箭头长度
--误差线图形绘制
errorbar(y,e)----y是需要绘制的曲线,误差柱上下宽度和为2e
errorbar2(x,y,e)
--离散数据绘制
将坐标点和x轴连接起来标示数据
stem(y)----绘制向量y的离散散杆图,由系统自由产生数值数列作为x位置
stem(x,y)----x为横坐标
stem(...,LineSpec)----可设置离散杆的线型
--伪色彩图绘制
pcolor(c)----绘制矩阵c的伪色彩图
pcolor(x,y,c)----在(x,y)处绘制
--极坐标图形绘制
polar(theta,rho)----采用极角thera和级径rho
polar(theta,rho,LineSpec)----LineSpec标志线型等
compass(z)----复数
feather(z)----箭头
rose(z)、rose(z,n)、rose(z,x)----20柱、n柱、和x位置出发的极坐标柱状图
--------------------------------------------------------------------END--------------------------------------------------------------------------------