plot(x,y) %描绘(x,y)点,点的个数点的密度是由x确定的,因为y可以是一个函数,是将x代进去算出的值
plot(y) %描绘(x,y)点,x=[1,2,3...n],n=length(y)
例:plot( cos(-2*pi : pi/20 : 2*pi) )
-
使用 hold on 指令,会将所有图像绘制到一个figure中。
例:
hold on
plot( cos(0 : pi/20 : 2*pi), 'o--g' )
plot( sin(0 : pi/20 : 2*pi), 'x:r' )
hold off
-
一条指令画多个图像
-
图例
例:
x = 0 : 0.5 : 4*pi;
y = sin(x);
h = cos(x);
w = 1 ./ (1+exp(-x));
g = (1/(2*pi*2)^0.5).*exp((-1.*(x-2*pi).^2)./(2*2^2));
plot(x,y,'bd-', x,h,'gp:', x,w,'ro-', x,g,'c^-'); %一条指令画四个曲线
legend('sin(x)', 'cos(x)', 'Sigmoid', 'Gauss function'); %图例
-
title()
-
xlabel()
-
ylabel()
-
zlabel()
例:
x = 0 : 0.1 : 2*pi;
y1 = sin(x);
y2 = exp(-x);
plot(x,y1,'--*', x,y2,':o');
legend('sin(t)', 'e^{-x}');
title("Function Plots of sin(t) and e^{-x}");
xlabel('t = 0 to 2\pi');
ylabel('values of sin(t) and e^{-x}');
-
\int_{0}^{2} 定积分符号 上下界
-
text()
-
annotation()
x = linspace(0,3);
y = x .^ 2 .* sin(x);
plot(x,y);
line([2,2], [0, 2 ^ 2 * sin(2)]);
str = '$$ \int_{0}^{2} x^2\sin(x) dx $$';
text(0.25, 2.5, str, 'Interpreter', 'latex');
annotation('arrow', 'X', [0.32, 0.5], 'Y', [0.6, 0.4]);
练习:
t = linspace(1,2);
y = t .^ 2;
g = sin(2*pi*t);
plot(t,y,'-k', t,g,'o:r');
legend('t^2', 'sin(2\pi t)');
title("Mini Assignment #1");
xlabel('Time (ms)');
ylabel('f(t)');
Figure Adjustment(调整)
http://www.mathworks.com/help/matlab/ref/figure-properties.html
-
Figure 's properties:
-
Axes 's properties:
-
Line 's properties:
-
Text 's properties
方案:
-
先找handle of object。
-
再获取或者修改object的属性。
操作步骤:
1. 获取handle的方法:
2.1 查看某个object有哪些属性?用get(handle)方法,会在terminal打印所有properties:
2.2 设置坐标轴的范围:
2.3 设置坐标轴字体大小、设置坐标轴的标记的内容:
代码:
x = linspace(0,3);
y = x .^ 2 .* sin(x);
line_sin = plot(x,y);
line_2 = line([3*pi/4,3*pi/4], [0, (3*pi/4) ^ 2 * sin(3*pi/4)]);
str = '$$ \int_{0}^{3\pi/4} x^2\sin(x) dx $$';
anno_text = text(0.18, 3, str, 'Interpreter', 'latex');
annotation('arrow', 'X', [0.33, 0.55], 'Y', [0.6, 0.35]); %整个版面:X:[0,1] Y:[1,0]
% 调整图像属性:
% get(line_sin); %查看Line有哪些属性
set(line_sin, 'LineStyle','-', 'LineWidth',3, 'Color',[0,0.5,0.7]) %修改Line的属性
% get(line_2);
% set(line_2, 'LineStyle', '--');
set(line_2, 'Color', [0,0,0]);
% get(anno_text);
set(anno_text, 'FontSize', 25);
% get(gca); %查看坐标轴的所有属性
set(gca, 'FontSize', 15);
set(gca, 'XLim', [0,pi]);
% XTick 和 XTickLabel 是对应的:
set(gca, 'XTick', 0:pi/4:2*pi);
% set(gca, 'XTickLabel', 0:45:180);
set(gca, 'TickLabelInterpreter', 'TeX'); %改成字符型
set(gca, 'XTickLabel', {'0', '\pi/4', '\pi/2', '3\pi/4', '\pi'});
set(gca, 'YLim', [0,4.5]);
% delete(line_sin); %删除某个图像
例子:修改 Line Object 的 Marker
x = rand(20,1);
line1 = plot(x, 'd-m');
% get(gca);
set(gca, 'XLim',[1,20], 'FontSize',15);
% get(line1);
set(line1, 'LineWidth',2, 'MarkerFaceColor','g', 'MarkerEdgeColor','k', 'MarkerSize',10);
Multiple Figure
figure
命令,用来创建figure window.
例:
x = -10 : 0.1 : 10;
y1 = x.^2 - 8;
y2 = exp(x);
figure, plot(x,y1);
figure, plot(x,y2);
Be Careful using
gcf
、gca
handle.
gcf
、gca
handle 指的是最后画的这个figure,前面的就找不到了。
Figure Position and Size :
一个 Figure Window,画许多不同的 small figure,使用 subplot(m,n,1)
m: num of rows
n: num of cols
x、y轴的比例:
-
axis normal: 自动比例
-
axis square: 方的
-
axis equal: data units are the same(最正确的比例)
-
axis equal tight: 最正确的比例切掉空余地方。
-
打开/关闭 网格
-
打开/关闭 y轴的upper bound 和 x轴的upper bound(上边框和右边框)
-
打开/关闭 x、y轴