Matlab代码之plot函数的坐标点显示

1、在图像某个位置显示文字信息,

用text(x,y,txt)函数在图像某个位置显示信息,x和y为位置,txt为内容
matlab的help有具体解释,这里举一个例子;

clc;clear;close all;
x=1:8;
y1=x+2;
%% 在图像任意位置显示文本
figure;plot(x,y1,'-*');title('图1:在图像任意位置显示文本');
xlabel('x');ylabel('y1');
text(5.5,7.5,'\leftarrow y1=x+2');

在这里插入图片描述

2、用text()显示plot函数的坐标点;

matlab官网讲的text不够详细,下面的代码可以分两种形式显示plot函数的坐标点,第一种只显示y值,第二种显示横纵坐标点

//
clc;clear;close all;
x=1:8;
y1=x+2;
figure;subplot(1,2,1);plot(x,y2,'-*');title('图2:显示函数坐标点形式一');
xlabel('x');ylabel('y2');
str1=num2str(y2');text(x,y2,str1);
%文件名不能与matlab内置函数同名,不然运行失败。

subplot(1,2,2);plot(x,y2,'-*');title('图3:显示函数坐标点形式二');
xlabel('x');ylabel('y2');
for i=1:8
text(x(i),y2(i),['(',num2str(x(i)),',',num2str(y2(i)),')']);
end
%第二种形式的第二种表达方法
%str=[repmat('(',size(x,2),1),num2str(x') ...
%repmat(', ',size(x,2),1),num2str(y2'),repmat(')',size(x,2),1)]; 
%text(x,y2,cellstr(str));

在这里插入图片描述

3、用legend()在一张图同时显示不同曲线;

横坐标相同,不同函数有不同的纵坐标,则有不同曲线,为了方便区分,需要给每个曲线命名,命名可以是固定不变的文本,也可以是变化的数字,但是需要将数字转为字符串,用num2str()

%% 在一张画布显示多条曲线
figure;plot(x,y1,'-*');hold on;
plot(x,y2,'-o');title('图4:在一张画布显示多条曲线');
xlabel('x');ylabel('y');
legend('y1=x+2',['y2=x^2数字',num2str(2)]);
%legend()的第二项只是为了表明不止可显示文本,还可显示可变的参数,如数字

在这里插入图片描述

4、用xlabel()、ylabel()、title()显示横纵坐标和标题;

5、用subplot在一张画布上画多个图像;

subplot(m,n,t):可以放置m行n列个图像;表示m行n列个图像第t个。
总标题可以用subtitle();

x=1:5;
y1=2*x;
y2=3*x;
subplot(1,2,1);plot(x,y1);title('图一');
subplot(1,2,2);plot(x,y2);title('图二');
suptitle('总标题')

在这里插入图片描述

6、matlab2019a安装包及教程

网盘链接
提取码:lodw

7、完整代码

clc;clear;close all;
x=1:8;
y1=x+2;
y2=x.^2;

%% 在图像任意位置显示文本
figure;plot(x,y1,'-*');title('图1:在图像任意位置显示文本');
xlabel('x');ylabel('y1');
text(5.5,7.5,'\leftarrow y1=x+2');

%% 显示函数坐标点形式一
figure;subplot(1,2,1);plot(x,y2,'-*');title('图2:显示函数坐标点形式一');
xlabel('x');ylabel('y2');
str1=num2str(y2');text(x,y2,str1);
%文件名不能与matlab内置函数同名,不然运行失败。
subplot(1,2,2);plot(x,y2,'-*');title('图3:显示函数坐标点形式二');
xlabel('x');ylabel('y2');
% for i=1:8
% text(x(i),y2(i),['(',num2str(x(i)),',',num2str(y2(i)),')']);%文件名不能与matlab内置函数同名,不然运行失败。
% end
str=[repmat('(',size(x,2),1),num2str(x') ...
repmat(', ',size(x,2),1),num2str(y2'),repmat(')',size(x,2),1)]; 
text(x,y2,cellstr(str));

%% 在一张画布显示多条曲线
figure;plot(x,y1,'-*');hold on;
plot(x,y2,'-o');title('图4:在一张画布显示多条曲线');
xlabel('x');ylabel('y');
legend('y1=x+2',['y2=x^2数字',num2str(2)]);
%legend()的第二项只是为了表明不止可以显示文本,还可以显示可变的参数,如数字

做图像处理实验一般要读取多张图像,统一处理,下一个博客代码实现如何同时处理多张图像并保存。matlab代码之图像批量读取、处理、保存

  • 62
    点赞
  • 349
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值