原文:Matlab随笔之画图函数总结

MATLAB函数画图

MATLAB不但擅长於矩阵相关的数值运算,也适合用在各种科学目视表示(Scientific visualization)。本节将介绍MATLAB基本xy平面及xyz空间的各项绘图命令,包含一维曲线及二维曲面的绘制、列印及存档。

基本XY平面绘图命令

Plot

是绘制一维曲线的基本函数,但在使用此函数之前,我们需先定义曲线上每一点的x及y座标。下例可画出一条正弦曲线:

close all;

%linspace(5,100,20)和5:5:100的区别在于前者已知元素总个数而不知道步长,后者已知步长不知元素个数,这两者的效果是一样的

x=linspace(0, 2*pi, 100); % 100个点的x座标

y=sin(x); % 对应的y座标

plot(x,y);

====================================================

小整理:MATLAB基本绘图函数

plot: x轴和y轴均为线性刻度(Linear scale)

loglog: x轴和y轴均为对数刻度(Logarithmic scale)

semilogx: x轴为对数刻度,y轴为线性刻度

semilogy: x轴为线性刻度,y轴为对数刻度

====================================================

若要画出多条曲线,只需将座标对依次放入plot函数即可:

plot(x, sin(x), x, cos(x));

若要改变颜色,在座标对后面加上相关字串即可:

plot(x, sin(x), 'c', x, cos(x), 'g');

若要同时改变颜色及图线型态(Line style),也是在座标对后面加上相

关字串即可:

plot(x, sin(x), 'co', x, cos(x), 'g*');

====================================================

小整理:plot绘图函数的叁数

字元 颜色 字元 图线型态

y 黄色 . 点

k 黑色 o 圆

w 白色 x x

b 蓝色 + +

g 绿色 * *

r 红色 - 实线

c 亮青色 : 点线

M 锰紫色 -. 点虚线

-- 虚线

====================================================

图形完成后,我们可用

axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围:

axis([0, 6, -1.2, 1.2]);

此外,MATLAB也可对图形加上各种注解与处理:

xlabel('Input Value'); % x轴注解

ylabel('Function Value'); % y轴注解

title('Two Trigonometric Functions'); % 图形标题

legend('y = sin(x)','y = cos(x)'); % 图形注解

grid on; % 显示格线

====================================================

我们可用subplot来同时画出数个小图形於同一个视窗之中:

subplot(2,2,1); plot(x, sin(x));

subplot(2,2,2); plot(x, cos(x));

subplot(2,2,3); plot(x, sinh(x));

subplot(2,2,4); plot(x, cosh(x));

MATLAB还有其他各种二维绘图函数,以适合不同的应用,详见下表。

====================================================

小整理:其他各种二维绘图函数

bar 长条图

errorbar 图形加上误差范围

fplot 较精确的函数图形

polar 极座标图

hist 累计图

rose 极座标累计图

stairs 阶梯图

stem 针状图

fill 实心图

feather 羽毛图

Compass 罗盘图

quiver 向量场图

====================================================

以下我们针对每个函数举例。

当资料点数量不多时,长条图是很适合的表示方式:

close all; % 关闭所有的图形视窗

x=1:10;

y=rand(size(x));

bar(x,y);

====================================================

如果已知资料的误差量,就可用errorbar来表示:

下例以单位标准差来做资料的误差量:

x = linspace(0,2*pi,30);

y = sin(x);

e = std(y)*ones(size(x));

errorbar(x,y,e)

====================================================

对于变化剧烈的函数,可用fplot来进行较精确的绘图,会对剧烈变化处进行较密集的取样,如下例:

fplot('sin(1/x)', [0.02 0.2]); % [0.02 0.2]是绘图范围

====================================================

若要产生极座标图形,可用polar:

theta=linspace(0, 2*pi);

r=cos(4*theta);

polar(theta, r);

====================================================

对于大量的资料,我们可用hist来显示资料的分布情况和统计特性。下面几个命令可用来验证randn产生的高斯乱数分 :

x=randn(5000, 1); % 产生5000个 ?=0,?=1 的高斯乱数

hist(x,20); % 20代表长条的个数

====================================================

rose和hist很接近,只不过是将资料大小视为角度,资料个数视为距离:

x=randn(1000, 1);

rose(x);

stairs可画出阶梯图:

x=linspace(0,10,50);

y=sin(x).*exp(-x/3);

stairs(x,y);

====================================================

stems可产生针状图,常被用来绘制数位讯号:

x=linspace(0,10,50);

y=sin(x).*exp(-x/3);

stem(x,y);

====================================================

stairs将资料点视为多边行顶点,并将此多边行涂上颜色:

x=linspace(0,10,50);

y=sin(x).*exp(-x/3);

fill(x,y,'b'); % 'b'为蓝色

====================================================

feather将每一个资料点视复数,并以箭号画出:

theta=linspace(0, 2*pi, 20);

z = cos(theta)+i*sin(theta);

feather(z);

====================================================

compass和feather很接近,只是每个箭号的起点都在圆点:

theta=linspace(0, 2*pi, 20);

z = cos(theta)+i*sin(theta);

compass(z);

基本XYZ立体绘图命令

在科学目视表示(Scientific visualization)中,三度空间的立体图是

一个非常重要的技巧。本章将介绍MATLAB基本XYZ三度空间的各项绘图命

令。

mesh和plot是三度空间立体绘图的基本命令,mesh可画出立体网状图,

plot则可画出立体曲面图,两者产生的图形都会依高度而有不同颜色。

下列命令可画出由函数 形成的立体网状图:

====================================================

x=linspace(-2, 2, 25); % 在x轴上取25点

y=linspace(-2, 2, 25); % 在y轴上取25点

[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵

zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是21x21的矩阵

mesh(xx, yy, zz); % 画出立体网状图

====================================================

surf和mesh的用法类似:

x=linspace(-2, 2, 25); % 在x轴上取25点

y=linspace(-2, 2, 25); % 在y轴上取25点

[xx,yy]=meshgrid(x, y); % xx和yy都是21x21的矩阵

zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是21x21的矩阵

surf(xx, yy, zz); % 画出立体曲面图

为了方便测试立体绘图,MATLAB提供了一个peaks函数,可产生一个凹凸有致的曲面,包含了三个局部极大点及三个局部极小点,其方程式为:

====================================================

要画出此函数的最快方法即是直接键入peaks:

peaks

z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...

- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...

- 1/3*exp(-(x+1).^2 - y.^2)

====================================================

亦可对peaks函数取点,再以各种不同方法进行绘图~

meshz可将曲面加上围裙:

[x,y,z]=peaks;

meshz(x,y,z);

axis([-inf inf -inf inf -inf inf]);

====================================================

waterfall可在x方向或y方向产生水流效果:

[x,y,z]=peaks;

waterfall(x,y,z);

axis([-inf inf -inf inf -inf inf]);

====================================================

下列命令产生在y方向的水流效果:

[x,y,z]=peaks;

waterfall(x',y',z');

axis([-inf inf -inf inf -inf inf]);

====================================================

meshc同时画出网状图与等高线:

[x,y,z]=peaks;

meshc(x,y,z);

axis([-inf inf -inf inf -inf inf]);

====================================================

surfc同时画出曲面图与等高线:

[x,y,z]=peaks;

surfc(x,y,z);

axis([-inf inf -inf inf -inf inf]);

====================================================

contour3画出曲面在三度空间中的等高线:

contour3(peaks, 20);

axis([-inf inf -inf inf -inf inf]);

====================================================

contour画出曲面等高线在XY平面的投影:

contour(peaks, 20);

====================================================

plot3可画出三度空间中的曲线:

t=linspace(0,20*pi, 501);

plot3(t.*sin(t), t.*cos(t), t);

====================================================

亦可同时画出两条三度空间中的曲线:

t=linspace(0, 10*pi, 501);

plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos

====================================================

MATLAB的图视化功能

1. MATLAB的图视化概论

数据图视化能使人们用视觉器官直接感受到数据的许多内在本质。因此,数据可视化是人们研究科学、认识世界所不可缺少的手段。MATLAB不仅数值计算方面是一个优秀的科技应用软件, 在数据可视化方面也具有上佳表现。

MATLAB具有二维、三维乃至四维的图形表现能力。可以从线型、边界面、色彩、渲染、光线、视角等方面把数据的特征表现出来。

MAT LAB的图视化功能是建立在一组“图形对象”的基础之上的。“图形对象”的核心是图形的句柄(Granhics Handle)操作。

MATLAB的有两个层次的绘图指令:

(1) 底层(Low-leve)绘图指令:是直接对句柄进行操作。

&nbsp;<wbr>底层绘图指令控制和表现数据图形的能力比高层绘图指令强。特点是灵活多变,较难掌握。

(2) 高层(High-level)绘图指令:建立在底层指令上的绘图指令。

&nbsp;<wbr>最常用的是高层绘图指令。高层绘图指令简单明了容易掌握,本章介绍高层绘图指令。本章内容按“前易后难”的原则安排。

&nbsp;<wbr>最常用的二个绘图指令是: plot ;mesh</font></strong></p>

&nbsp;<wbr>

2. 二维图形

(1) plot函数

以下例子用来体会plot 的基本的绘图原理。

例:绘向量得折线图:

hold on

x=[2.3,4.3,3,4,4.9,1.5,2.8,4.6,5.5];

plot(x)

plot(x,'ro')

注1:plot 绘图的基本素材是二维点组(x i,y i)(1=1,2,….n)。

二维点组(x i,y i)(1=1,2,….n)的定义形式:

*1) x=[2.3,4.3,3,4,4.9,1.5,2.8,4.6,5.5];

*2) y=0:0.1:5

这种定义方法,默认横坐标是自然数(1,2,3,4…..)

*3)t=0:pi/100:2*pi

&nbsp;<wbr>x=sin(t)

*4) x=[1.5,2.3,2.8,3,4,4.3,4.6,4.9,5.5];

y=x.^2

这种定义方法,要注意自变量保持升序。自变量与应变量的体积的一致。

注2:plot 绘图的基本原理是依(x i,y i)(1=1,2,….n)排列顺序用直线连接。曲线光滑与否与点数相关。

hold off

t=0:pi/3:2*pi;

x=sin(t);

plot(t,x,'r-')</font></strong></p>

hold on

t=0:pi/5:2*pi;

x=sin(t);

plot(t,x,'b-')

(1) 坐标系定制

用于对坐标轴进行管理与控制,如刻度,外观,文字说明等

*1)坐标轴定制指令(axis)

'axis'用于对坐标轴刻度进行管理与控制。指令形式与作用说明如下:

&nbsp;<wbr>AXIS([XMIN XMAX YMIN YMAX]) 设置 x- and y-axes刻度。

AXIS([XMIN XMAX YMIN YMAX ZMIN ZMAX]) 设置 x- and y-axes和 z-axes刻度。

V = AXIS 返回当前图形行向量的刻度设置[XMIN XMAX YMIN YMAX]或([XMIN XMAX YMIN YMAX ZMIN ZMAX])。

AXIS AUTO 返回刻度设置的系统默认值

AXIS TIGHT 依数据设置刻度

AXIS IJ 设置坐标轴的原点在左上角

AXIS XY 设置坐标轴的原点在左下角

AXIS EQUAL 设置坐标轴的比例因子相等。

AXIS IMAGE

AXIS SQUARE

AXIS NORMAL

AXIS VIS3D

AXIS OFF

AXIS ON

例:

XMIN=1;

XMAX=10;

YMIN=10;

YMAX=100;

AXIS([XMIN XMAX YMIN YMAX])

plot([1,50,3,60,5,20,3])</font></strong></p>

*2)其它坐标系:polar

例1:polar(THETA, RHO)

t=0:0.1:2*pi;

r=t;

polar(t,r)</font></strong></p>

例2:对数-对数

t=0:0.1:2*pi;

r=t;

semilogx(t,r)</font></strong></p>

(2)

(3) 图视效果强化

例:加入格栅;坐标轴标志;文本说明等

clf; hold off

t=linspace(0,pi*3,30);

x=sin(t);

hold on

y=cos(t);

plot(t,x,'r-',t,y,'g-')</font></strong></p>

grid% 加入格栅

xlabel('x轴')

ylabel('y轴')

title('正弦与余弦曲线')

text(1,0,'正弦')%text(x,y,'正弦')

text(3,0,'余弦')

legend('sin(x)','cos(x)',3)

%LEGEND('string',Pos) places the legend in the specified,

%0 = Automatic "best" placement (least conflict with data)

%1 = Upper right-hand corner (default)

%2 = Upper left-hand corner

%3 = Lower left-hand corner

%4 = Lower right-hand corner

% -1 = To the right of the plot

%按鼠表 left mouse button 拖legend到指定的位置</font></strong></p>

(2) 子图

clf; hold off

t=linspace(0,pi*3,30);

x=sin(exp(t));

subplot (2,2,2) %(n,m,p(0&lt;p&lt;m*n)

plot (t,x,'r-')

y=exp(sin(t));

subplot (2,2,3)

plot (t,y,'g-')</font></strong></p>

(3) 特殊二维图形

</font></strong></p>

例:误差图(errorbar)

clf;x=0:0.1:4;

y=zeros(size(x));e=rand(size(x));

yu=y+e;yd=y-e;

errorbar(x,y,e)

hold on

plot(x,yu,'r-');plot(x,yd,'r-');</font></strong></p>

(3) 绘图工具

mmaxes prop value…修改绘图坐标轴的属性

mmcxy(or)xy—mmcxy显示图上鼠标的x-y坐标

mmdraw prop value…&nbsp;<wbr>在图上画直线

rnmfill(x,y,z,c,lb,ub)填充两条曲线间区域

mmgetxy(N)使用鼠标获取x-y坐标

mmline prop value…&nbsp;<wbr>修改所画线条的属性

mmtile&nbsp;<wbr>平铺多图形窗口

mmtext(' optional text')&nbsp;<wbr>在图上放置或拖曳文本

mrnzoom&nbsp;<wbr>用橡皮框缩放坐标轴

mmzap object使用鼠标删除文本,线型或坐标轴

mmfont prop value修改文本字体属性</font></strong></p>

<p>例:

clf;x=0:0.1:4;

y=zeros(size(x));e=rand(size(x));

yu=y+e;yd=y-e;

errorbar(x,y,e)

hold on

plot(x,yu,'r-');plot(x,yd,'r-');

yu(1)=0;yu(41)=0;

fill(x,yu,'r');

yd(1)=0;yd(41)=0;

fill(x,yd,'g');&nbsp;<wbr>&nbsp

<p>3. 三维图形

(1) plot3(三维直线函数)

以下例子用来体会plot 3的基本的绘图原理。

例:绘参数方程 x=t;y=sin(t);z=cos(t) 的空间曲线

clf

t=0:0.05:100;

x=t;y=sin(t);z=sin(2*t);

plot3(x,y,z,'b:')

</p>

<p>例:空间划线:

clf

t=0:0.1:10;x=t;

y=0*ones(size(x));z=sin(t);

plot3(x,y,z,'r')

hold on

z=0*ones(size(x));

y=sin(t);

plot3(x,y,z,'g')

xlabel('x');ylabel('y');zlabel('z');</p>

<p>

(2) 三维曲面网格图

例1:划马鞍面:

clf

x=-4:0.5:4;

y=-4:0.5:4;

[U,V]=meshgrid(x,y);

Z=-U.^4+V.^4-U.^2-V.^2-2*U*V;

mesh(Z);

xlabel('x');

ylabel('y');

zlabel('z');&nbsp

<p>

注1:meshgrid的含义,绘图的基础是网格,一个二元系矩阵[(x i,y j)]

hold off

a=ones(9);

a1=2*ones(5);

a2=3*ones(2);

a(3:7,3:7)=a1;

a(5:6,5:6)=a2;

meshc(a)</p>

<p>

例二:peakS 函数的图形:

peakS 函数的表达式

z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2)

- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2)

- 1/3*exp(-(x+1).^2 - y.^2)

clf;[x,y,z]=peaks(20);p=peaks(20);

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

subplot(2,2,2);meshz(y,x,z)

subplot(2,2,3);meshc(p)

subplot(2,2,4);waterfall(p)</p>

<p>

注1:[x,y,z]=peaks(20):为变换角度带来方便。见二图。

p=peaks(20):默认x,y,z的顺序给p赋值。

注2:mesh;meshz;meshc;waterfall,表现上有区别。

注3:peaks 是演示函数。MATLAB中有许多不同的演示函数,与演示程序(**demo.m)结合在一起。如&nbsp;<wbr>peaks图形演示函数

banane优化演示函数</p>

<p>(3) 色彩与效果

*1)mesh;SURF;SURFC, SURFL比较 :变更色调(由暖到冷,默认红到兰)的变化方向

shading :涂色方式

clf;x= -1.5:0.2:1.5;y=-1:0.2:1;

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

p=sqrt(4-X.^2/9-Y.^2/4);

subplot(3,2,1);mesh(p);%有网格 格子图,色调方向:有上到下

subplot(3,2,2);surf(p);%默认的方向:色调方向:有上到下

subplot(3,2,3);surfc(p)&nbsp;<wbr>;%带登高线;色调方向:有上到下

subplot(3,2,4);surfl(p)&nbsp;<wbr>;%色调方向:沿y轴方向

shading interp; %平滑涂色 图,无格线

subplot(3,2,5);surfl(p)

shading faceted&nbsp;<wbr>;%有网格涂色 格子图,有格线;

subplot(3,2,6);surfl(p)

shading flat;%有网格涂色 格子图,无格线;

*2) SURFL的z-参数。看z-参数的确定平滑涂色效果(定义变化方向)surfl(p,z);z=(n1,n2,n3)。&nbsp;<wbr>

clf;

x= -0.5:0.3:2.5;y=-0.5:0.3:2;

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

p=(4+X.^2/9+Y.^2/4);;

%cm=[1 0 0;0 1 0;0 0 1];

%colormap(cm)

subplot(2,2,1);surfl(p,[1,0,0])

subplot(2,2,2);surfl(p,[0,1,0])

subplot(2,2,3);surfl(p,[0,0,1])

subplot(2,2,4);surfl(p,[1,1,0])</p>

<p>(4) 辅助图视效果

*1)视角定义view(az,el)

clf;x= -1.5:0.2:1.5;y=-1:0.2:1;

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

p=sqrt(4-X.^2/9-Y.^2/4);

subplot(2,2,1);surfl(p);view(30,30)

shading interp

subplot(2,2,2);surfl(p);view(90,10)

shading interp

subplot(2,2,3);surfl(p);view(-10,-10)

shading interp

subplot(2,2,4);surfl(p);view(140,60)

shading interp&nbsp;<wbr>&nbsp

<p>*2)surfl光照模式与光照角度设置, surfl(x,y,z,d,s,k)指令中s 与k 参数

d:见(3)

s:确定光照角度;z=(sx,sy,sz);默认光照角度是观察角逆时针方向45度

k::光照模式:确定强度

ka:背景光&nbsp;<wbr>kd:漫射光ks:定向光spread:扩散光

例:

clf;x= -1.5:0.2:1.5;y=-1:0.2:1;

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

Z=sqrt(4-X.^2/9-Y.^2/4);

view(45,45)

subplot(2,2,1);surfl(X,Y,Z, [0,45],[.1 .6 .4 10]);

shading interp

subplot(2,2,2);surfl(X,Y,Z, [20,45],[.3 .6 .4 10]);

shading interp

subplot(2,2,3);surfl(X,Y,Z, [40,45],[.6 .6 .4 10]);

shading interp

subplot(2,2,4);surfl(X,Y,Z, [60,45],[.9 .6 .4 10]);

shading interp</p>

<p>*3) 图视放大 zoom on ;zoom off; zoom

*鼠标点击变焦(左键放大;右键盘缩小)

*鼠标拖拉变焦

t=-16:0.1:16;

x=sin(t.*10).*(t.^2);

plot(t,x,'r-')

zoom on&nbsp;<wbr>&nbsp

<p>4. 超维图形表达

(1) 三维色彩表达(色轴;图象的色彩维)

clf

a=ones(20);

a1=2*ones(13);

a2=3*ones(7);

a3=4*ones(2);

a(4:16,4:16)=a1;

a(7:13,7:13)=a2;

a(10:11,10:11)=a3;

subplot(2,1,1)

meshc(a)

subplot(2,1,2)

pcolor(a)

colorbar('horiz')

colormap(hsv)

% shading interp

(2) 四维色彩表达(色轴;图象的色彩维)

clf

x=-5:0.1:5;

y=-5:0.25:5;

z=-5:0.25:5;

n=length(x);

[X,Y,Z]=meshgrid(x,y,z);

V=(-X.^2-Y.^2-Z.^2);

xi=[-4,-2,0,2,4];

yi=0.5;

zi=-0.5;

subplot(2,1,1);

slice(x,y,z,V,xi,yi,zi);

colorbar('horiz');

view([45,45]);

shading interp</p>

<p>xi=[0];

subplot(2,1,2);

slice(x,y,z,V,xi,yi,zi);

view([30,45]);

作业:

画图题

1. 体会各种绘图命令及效果。假设用户有下面的绘图数据向量

t=0:0.1:10;y=sin(tan(t))-tan(sin(t));

且绘图函数采用下面各个函数,如polar(),bar(),stem(),stairs(),那么试得出并解释所得出的结果。

2. 证明: 函数z=xy的图形是双曲抛物面。(提示:在区域-2≤x≤2,-2≤y≤2上作出它的图形。)

3. 用subplot分别在不同的坐标系下作出下列四条曲线,为每幅图形加上标题,

①概率曲线 (-5≤x≤5);②四叶玫瑰线 (0≤x≤2pi);

③叶形线 (-2≤x≤2) ; ④曳物线 (-1≤x≤1)。

4. 分析如下程序并运行:

clf,

x=sym('x'); f=(x-3)^2/(4*(x-1)); g=x/4-5/4;

hold on,

h=line([-8 8],[0,0]); set(h,'color’,'red’);

h=line([0 0],[-8,8]); set(h,'color’,'red’);

line([1 1],[-8 8]);plot([-1 1 3],[-2,0,0],'o’),

ezplot(g,[-8 8]); ezplot(f,[-8,8]), %符号函数绘图

text(-1-0.5,-2-0.5,'(-1,-2)’);text(1,0-0.5,'(1,0)'); text(3,0.5,'(3,0)');

x=1.4;text(x,subs(f),'\leftarrow{(x-3)}^{2}/{4(x-1)}');

x=0.6;text(x,subs(f),'\leftarrow{(x-3)}^{2}/{4(x-1)}');

x=2.5;text(x,subs(g),'\leftarrow斜渐近线{y=x/4-5}');

text(1,-2,'\leftarrow垂直渐近线x=1');title('(x-3)^2/4(x-1)')

5.读下列程序并运行:

clf,n=2000;a=-4;b=6;c=-8;d=8;

t=linspace(a,b,n);

x=(t.^2)./(t-1);y=t./(t.^2-1);

kx=find(abs(x)>=d);x(kx)=NaN;

ky=find(abs(y)>=d);x(ky)=NaN;

plot(t,[x;y],'.','markersize',3),

hold on,plot([a b],[0,0],'r',[0 0],[c,d],':'),axis([a b c d]),

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

text(-3.8,7,'put any key to show x=x(t)');pause,comet(t,x),

text(-3.8,6,'put any key to show y=y(t)');pause,comet(t,y)

Matlab随笔之画图函数总结的更多相关文章

  1. Scilab 的画图函数(1)

    Scilab 的画图函数 plot 函数 最主要的是 plot 函数,与 matlab 中的plot 函数类似. xdata = linspace(1,10,50); ydata = sin(xdat ...

  2. Matlab随笔之矩阵入门知识

    原文:Matlab随笔之矩阵入门知识 直接输入法创建矩阵 – 矩阵的所有元素必须放在方括号“[ ]”内: – 矩阵列元素之间必须用逗号“,”或空格隔开,每行必须用“;”隔开 – 矩阵元素可以是任何不含 ...

  3. Matlab随笔之线性规划

    原文:Matlab随笔之线性规划   LP(Linear programming,线性规划)是一种优化方法,在优化问题中目标函数和约束函数均为向量变量的线性函数,LP问题可描述为:min xs.t. ...

  4. Matlab随笔之指派问题的整数规划

    原文:Matlab随笔之指派问题的整数规划 注:除了指派问题外,一般的整数规划问题无法直接利用Matlab函数,必须Matlab编程实现分支定界法和割平面解法. 常用Lingo等专用软件求解整数规划问 ...

  5. Matlab随笔之求解线性方程

    原文:Matlab随笔之求解线性方程 理论知识补充: %矩阵除分为矩阵右除和矩阵左除. %矩阵右除的运算符号为“/”,设A,B为两个矩阵,则“A/B”是指方程X*B=A的解矩阵X. %矩阵A和B的列数 ...

  6. Matlab随笔之插值与拟合(上)

    原文:Matlab随笔之插值与拟合(上) 1.拉格朗日插值 新建如下函数: function y=lagrange(x0,y0,x) %拉格朗日插值函数 %n 个节点数据以数组 x0, y0 输入(注 ...

  7. Matlab随笔之插值与拟合(下)

    原文:Matlab随笔之插值与拟合(下) 1.二维插值之插值节点为网格节点 已知m x n个节点:(xi,yj,zij)(i=1…m,j=1…n),且xi,yi递增.求(x,y)处的插值z. Matl ...

  8. MATLAB中的参数估计函数详解及调用示例【联合整理】

    前言 因为最近项目上的需要,才发现MATLAB的统计工具箱中的参数估计函数,觉得很简单很好用,现在把所有的参数估计函数整理一下,并在最后面附上调用示例. 参与人员 由于时间关系,这篇随笔是两个人一起整 ...

  9. Matlab学习笔记 figure函数

    Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...

随机推荐

  1. 安装hadoop1.2.1集群环境 分类: A1_HADOOP 2014-08-29 15:49 1444人阅读 评论(0) 收藏

    一.规划 (一)硬件资源 10.171.29.191 master 10.173.54.84  slave1 10.171.114.223 slave2 (二)基本资料 用户:  jediael 目录 ...

  2. php curl 添加cookie伪造登陆抓取数据(摘自网络)

    有的网页必须登陆才能看到,这个时候想要抓取信息必须在header里面传递cookie值才能获取 1.首先登陆网站,打开firebug就能看到对应的cookie把这些cookie拷贝出来就能使用了 2. ...

  3. freemarker自己定义标签报错(七)

    1.错误描写叙述 六月 09, 2014 11:11:09 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template pr ...

  4. [Ramda] Declaratively Map Data Transformations to Object Properties Using Ramda evolve

    We don't always control the data we need in our applications, and that means we often find ourselves ...

  5. 【u025】贝茜的晨练计划

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的运动方式是每天进行N(1 <= ...

  6. 【z06】观光公交

    描述 风景迷人的小城Y市,拥有n个美丽的景点.由于慕名而来的游客越来越多,Y市特意安排了一辆观光公交车,为游客提供更便捷的交通服务.观光公交车在第0分钟出现在1号景点,随后依次前往2.3.4--n号景 ...

  7. .NETCore 实现容器化Docker与私有镜像仓库管理

    原文:.NETCore 实现容器化Docker与私有镜像仓库管理 一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技 ...

  8. js进阶 9-15 多选框如何限制选中数目

    js进阶 9-15 多选框如何限制选中数目 一.总结 一句话总结: 1.多选框如何限制选中数目? 没点击选择一次,来统计现在总共选了多少个,如果超出,就给onclick事件返回false,取消oncl ...

  9. Linux硬件信息查询命令

    系统 uname -a              # 查看内核/操作系统/CPU信息 Linux hostname 2.6.18-128.el5 #1 SMP Wed Dec 17 11:41:38 ...

  10. 《Windows核心编程》之“完成端口”(对所有IO都是如此,不仅仅是对socket)

    <Windows核心编程>第10章开头部分一再强调:“IO Completion Port”是“构建高性能.可升缩的应用程序”的最佳设施之一,它不仅适用于处理设备IO,也适用于其它越来越多 ...