Matlab常用代码(画图、输出字符、保存变量、图片等)

本文详细讲解了Matlab中的绘图方法,从一维图、二维图的基本元素到高级特性,如多图显示、颜色设置和图例管理。还包括字符输出、变量存储和图片操作,如生成和保存多种格式的图片。

目录

前言

1、画图

1.1、一维图

1.1.1、一维图的标记符号、线型

1.1.2、一维图的颜色

1.2、二维图

1.2.1、二维图的颜色,添加colorbar

1.3、一个图中显示多张子图、一个图中包含多条曲线

1.4、添加图例、标题、坐标轴、网格(子网格)

1.5、设置坐标轴范围、图形形状(方形)、不显示坐标轴

2、输出字符

2.1、图片名称随变量值改变而改变

3、保存、加载变量(mat文件)

4、保存、导入图片(png、bmp格式) 

4.1、将多张图片保存到一个文件夹中


前言

matlab画图的一些基本指令,包括画图、输出字符、保存变量等操作


1、画图

1.1、一维图

1.1.1、一维图的标记符号、线型

标记符号:(标记符号的大小可用  'marksize' 指令)

 

线型:线宽:用命令 'linewidth' 来指令:)

 示例代码: 

x = linspace(0,pi,10); %0-pi等间距插10个值
y1 = cos(x);

figure
% 线型:实线; 符号:o; 符号大小:10;  线宽:4
plot(x,y1,'-o','markersize',10,'linewidth',4) 

1.1.2、一维图的颜色

颜色的一种表示方式使用单个字母表示:

红色绿色蓝色黑色白色黄色粉色青色
rgbkwymc

另外一种表示方式,即用 r,g,b 数值表示(matlab默认最大值为1,可在0-1之间选择)

红色绿色蓝色黑色白色黄色灰色品红
[1 0 0][0 1 0][0 0 1][0 0 0][1 1 1][1 1 0][0.5 0.5 0.5][1 0 1]

也可以用16进制表示

 示例代码:

x=[1,2,3,4,5,6];
y=[1,4,9,16,25,36];

figure
plot(x,y,'color','b') %蓝色
figure
plot(x,y,'color',[0.5 0.5 0.5]) %灰色
figure
plot(x,y,'color','#D95319') %橘黄色

1.2、二维图

1.2.1、二维图的颜色,添加colorbar

 示例代码:

I=rand(10); %产生一个随机矩阵,维度10*10
% hot
figure;imagesc(I);colormap(hot)
% summer 并添加colorbar
figure;imagesc(I);colormap(summer);colorbar

1.3、一个图中显示多张子图、一个图中包含多条曲线

  示例代码: 

x = linspace(0,pi,20);
y1 = cos(x);
y2 = sin(x);
%-----------------------------------------------%
% 一张图上画多张子图
figure
%子图1
subplot(1,2,1); plot(x,y2)
%子图2
subplot(1,2,2);plot(x,y1)
%-----------------------------------------------%
% 一张图上画多条曲线
figure
plot(x,y1)
hold on
plot(x,y2)

1.4、添加图例、标题、坐标轴、网格(子网格)

 示例代码: 

x = linspace(0,pi,20);
y1 = cos(x);
y2 = sin(x);

figure
plot(x,y1)
hold on  %将两个图形画在一个图片里
plot(x,y2)
%标题  字号16, 字体Arial,加粗,红色 
title('cos&sin', 'FontSize', 16, 'FontName', 'Arial', 'Color', 'red'); 
%横坐标 字号14, 字体Arial,加粗,蓝色 
xlabel('x label', 'FontSize', 14, 'FontName', 'Arial', 'FontWeight', 'bold', 'Color', 'blue')  
%纵坐标 字号14, 字体italic,加粗,绿色 
ylabel('y label', 'FontSize', 14, 'FontName', 'Arial', 'FontAngle', 'italic', 'Color', 'green') 
legend('cos(x)','sin(x)') %图例
lgd = legend;
lgd.FontSize = 14; %设置图例字体大小
grid on %添加网格
grid minor %子网格 

1.5、设置坐标轴范围、图形形状(方形)、不显示坐标轴

 示例代码: 

x = linspace(0,pi,20);
y1 = cos(x);
y2 = sin(x);

figure
plot(x,y1)
xlim([0 pi/2])  % x轴显示范围
ylim([-0.4 1.4])  % y轴显示范围
axis square  %图形为方形


figure
plot(x,y2)
axis square  %图形为方形
axis off  %不显示坐标轴

2、输出字符

 输出字符串、变量的数值等

 示例代码:

a=345;
b=789;
disp('====================================')
disp('你好!')
disp(['a的值为: ' num2str(a),' // ', 'b的值为:' num2str(b)]);
%  %.2f保留两位小数   /n 换行
fprintf('a = %.2f \n',a);   
%  %d 整数
fprintf('a = %d \n',a);  

2.1、图片名称随变量值改变而改变

 有时候会输出几张图片,每张图片的名称是不一样的,可以用下述代码给不同图片加不同的序号。

  示例代码: 

% 在一张图片中显示4张子图,每张子图的题目不同
figure
for i=1:4
    img=rand(10);    % 产生随机矩阵
    subplot(2,2,i)
    imagesc(img)
    title(sprintf('rand matrix%d',i))
end

3、保存、加载变量(mat文件)

 示例代码:

x=1;
y=12;
z=13;

%保存变量
save filename x y   %将变量 x,y 存到 filename.mat 的文件中
save filename      %将所有变量存到 filename.mat 的文件中
%加载变量
load filename.mat
load('filename.mat')

4、保存、导入图片(png、bmp格式) 

  示例代码:

a=rand(10);


imwrite(a,'a.bmp'); %将变量a保存为bmp文件
imwrite(a,'a.png'); %将变量a保存为png文件(将a归一化到[0,1]之间后再写出,读入后1默认为255)

%导入a.bmp  a.png文件
I=imread('a.bmp') %数值量化到0-255区间
I2=imread('a.png') %数值量化到0-255区间

4.1、将多张图片保存到一个文件夹中

  示例代码: 

% 创建保存图片的文件夹
outputFolder = 'figure';
if ~exist(outputFolder, 'dir')
    mkdir(outputFolder);
end

% 输出100张随机矩阵图片(png格式),命名为rand_matrix1.png, rand_matrix2.png,......
for i=1:100
    % 产生随机矩阵
    img=rand(10);
    % 创建文件名
    filename = fullfile(outputFolder, sprintf('rand_matrix%d.png', i));
    % 保存图像为PNG格式
    imwrite(img, filename, 'png');
end
disp('输出图片完成')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值