Matlab笔记-第三章

语句

输入输出语句

  • 输入语句
a = input('Enter 123') % 可以输入整数,也可以输入char比如‘apple’;或者string比如“apple”
string = input('Enter 123','s') % 输入string
  • 输出语句
area = 1
disp(area) % 1

fprintf('%f %c %d %s \n', 0.9,'a',1,65) % 0.9 'a' 1 'a' 
% \n是换行 \t是tab
fprintf('%3.1f', 0.98) % 0.9 一共三个字符,小数点后一位

fprintf('|%-3.1f|', 0.98) % -就是向左对齐
fprintf('|%+3.1f|', 0.98) % +就是向右对齐

图像绘制

  • 例子1
x = 11;
y = 11;
plot(x,y,'r*') % 用红色的*表示一个点
axis([9 12 25 55]) % 坐标轴的 xmin xmax ymin ymax
xlabel('x坐标的名称')
ylabel('y坐标的名称')
title('图像的名字')
  • 例子2
x = 1:6;
y = [1 5 3 9 11 8];
plot(x,y,'r*-.') % 用红色的*表示一个点,-.是线的显示
hold; % 执行一次hold就是擦画图的状态,就是想系统变量ishold变为1或者0;ishold=1是不擦画布的状态,两个图像就会重叠
plot(x,y,'x-.') % 用x表示一个点,-.是线的显示

xlabel('x坐标的名称')
ylabel('y坐标的名称')
title('图像的名字')
  • 例子3,图像的重叠开关
x = 1:6;
y = [1 5 3 9 11 8];

hold on; %将画布的状态转化为开ishold=1,就是可以重叠图像;

plot(x,y,'r*-.') % 用红色的*表示一个点,-.是线的显示
plot(x,y+1,'x-.') % 用x表示一个点,-.是线的显示

hold off; %将画布的状态转化为关ishold=0,就是擦画布,就是不可以重叠图像;

xlabel('x坐标的名称')
ylabel('y坐标的名称')
title('图像的名字')
  • 线的颜色
    在这里插入图片描述

  • 例子4,重建画布

x = 1:6;
y = [1 5 3 9 11 8];

plot(x,y,'r*-.') % 用红色的*表示一个点,-.是线的显示

figure(); % 新建画布 figure(1)或者指定画布
% close(1); % 可以直接关闭某个画布
% clf; % = close(1) + figure(1) ,如果有figure(1)和figure(2),那么就是对figure(1)进行操作
plot(x,y+1,'x-.') % 用x表示一个点,-.是线的显示

xlabel('x坐标的名称')
ylabel('y坐标的名称')
title('图像的名字')
  • 例子5,一个画布多坐标
close all;
x = 1:6;
y = [1 3 5 7 9 10];

figure(1);

subplot(2,1,1); % 选中第一块画布
plot(x,y,'x-');
hold off; % 不可以重叠

subplot(2,1,2); % 选中第二块画布
plot(x,y,'o-');
hold on; % 可以重叠
plot(x,y+1,'o-');

cla; %清空最后一块画布的内容
  • 网格和图例
grid on; % 网格的开启
legend('line1','line2') % 有几条线,就可以有几个图例
  • 条形图
bar(1:10,randi([1,9],[1,10])) % 横坐标1到10,纵坐标随机生成1到9的数,总共10个数
  • 文件的操作
%文件的覆盖存储
mymat = rand(2,3) % 随机生成一个2行3列的矩阵
save testfile.dat mymat -ascii % 将mymat存储在testfile.dat文件中,.dat和.txt都可以为扩展名结尾
type testfile.dat % 打印出testfile.dat中的内容

%文件的追加存储
save testfile.dat mymat -ascii -append %  -append文件追加的存储

%文件的读取
load testfile.dat % 读取文件里的数据并且放到内存中
  • 例子6,练习题
mat = [1.2 1.4 1.8 1.3;2.2 2.5 1.7 2.9];
save mat1.dat mat -ascii;
load mat1.dat

asales = mat1(1,:);
bsales = mat1(2,:);

hold on;
plot(asales,'ko');
plot(bsales,'k*');
hold off;

xlabel('Quarter');
ylabel('Sales (billions)');
title('2013');
legend('D A','D B');

函数

% 文件名字为threeNote1
function area = calcarea(rad)
% 这里可以加注释
    area = pi * rad ^ 2; %  area = pi * rad .^ 2; % .^可以接收向量

end
  • 调用
threeNote1(2) % 是以文件的名字调用的,不是以函数名字调用的
threeNote1([1 2 3]) % .^可以接收向量
  • 等效调用
hold('on') % = hold on
save('testfile.dat','mymat', '-ascii', '-append') % = save testfile.dat mymat -ascii -append
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值