用MATLAB subplot绘制多图时3个图的高度不一样,如图,参考过很多改变图片大小的方法不管用,求高手指点

作者&投稿:米健 (若有异议请与网页底部的电邮联系)
用matlab绘图时,如何只设定一个轴范围?~

用matlab绘图时,只设定一个轴范围可以通过以下方法来实现:
使用 axis([XMIN XMAX YMIN YMAX]) ,对于不需要设置范围的轴,使用参数-inf,inf,即正负无穷之间
示例代码:
>> x = 1:10;
>> y = x.^2;
>> subplot(3,1,1)
>> plot(x,y,'r')
>> subplot(3,1,2)
>> plot(x,y,'g')
>> xlim([0,15])
>> subplot(3,1,3)
>> plot(x,y,'b')
>> axis([-1,12,-inf,inf])
绘图结果:

例子1:
y=f(x)函数非常复杂,y的范围非常不确定,只期望观察到x在1.7到2.3之间的y值。
xlim([1.7 2.3])
clc;clear
x=0:pi/20:2*pi;
y=sin(x);
plot(x,y)
xlim([ -pi 2*pi])
例子2:
有一个1*10000的矩阵X,需要把它画出来。要求是每一百点给出一个坐标刻度,刻度为y1,y2,y3,.....,y100
也就是:X(1)到X(100)画出在坐标轴的X(1)位置标出y1
X(101)到X(200)画出在坐标轴的X(101)位置标出y2
X(201)到X(300)画出在坐标轴的X(201)位置标出y3
......
X(9901)到X(10000)画出在坐标轴的X(9901)位置标出y100
clear,clc
t = 1:1:100;
y = sin(0.1*t);
plot(t,y)
set(gca,'XTick',1:20:100,'XTickLabel',1:20:100)
扩展资料:MATLAB系统由MATLAB开发环境、MATLAB数学函数库、MATLAB语言、MATLAB图形处理系统和MATLAB应用程序接口(API)五大部分构成。
开发环境
MATLAB开发环境是一套方便用户使用的MATLAB函数和文件工具集,其中许多工具是图形化用户接口。它是一个集成的 用户工作空间,允许用户输入输出数据,并提供了M文件的集成编译和调试环境,包括MATLAB桌面、命令窗口、M文件编辑调试器、MATLAB工作空间和在线帮助文档。
数学函数
MATLAB数学函数库包括了大量的计算算法。从基本算法如四则运算、三角函数,到复杂算法如矩阵求逆、快速傅里叶变换等。
语言
MATLAB语言是一种高级的基于矩阵/数组的语言,它有程序流控制、函数、数据结构、输入/输出和面向对象编程等特色。用这种语言能够方便快捷建立起简单运行快的程序,也能建立复杂的程序。
图形处理
图形处理系统使得MATLAB能方便的图形化显示向量和矩阵,而且能对图形添加标注和打印。它包括强大的二维三维图形函数、图像处理和动画显示等函数。
程序接口
MATLAB应用程序接口(API)是一个使MATLAB语言能与C、Fortran等其它高级编程语言进行交互的函数库。该函数库的函数通过调用动态链接库(DLL)实现与MATLAB文件的数据交换,其主要功能包括在MATLAB中调用C和Fortran程序,以及在MATLAB与其它应用程序间建立客户、服务器关系。

可以控制子图的大小和位置。
给你一个例子吧。
h=subplot(1,2,1)
set(h,'position',[0.3 0.1100 0.1347 0.8150]) %四个参数分别是子图的x位置,y位置,宽度,高度
plot(1:10);

h=subplot(1,2,2)
set(h,'position',[0.7 0.3100 0.1 0.5150]) %四个参数分别是子图的x位置,y位置,宽度,高度
plot(sin(0:0.01:2*pi));


============
看了你的例子,我觉得你最好,画成两个2*2的。
因为四个的图标放不下。

% 在每次画图后增加一句
axis equal; % 让 xy 轴的比例为 1:1

% 或者
set(gca,'DataAspectRatio',[1 1 1]); % 设置当前坐标轴(xyz)比例为 1:1:1


郧县18219535134: matlab中subplot怎么用 -
双逸安得: 1、例如 subplot(2,2,1),表示一个2行2列的画布上,用第一行第一列画图. 2、例如:复制一下程序到matlab窗口 figuret=0:0.001:1;y1=sin(10*t);y2=sin(15*t);y3=sin(20*t);y4=sin(25*t); subplot(2,2,1) plot(t,y1,'--r*','linewidth',2,'markersize',5) ...

郧县18219535134: matlab绘图解答用subplot函数分别在不同坐标系下作出下列四条曲线,为每幅图形加上标题:①概率曲线 y=exp( - x^2)( - 5 x 5)②四叶玫瑰线 r=sin2x (0 -
双逸安得:[答案] x=1:0.01:5; y=exp(-x.*x); subplot(2,2,1) plot(x,y); title('概率曲线') subplot(2,2,2) a=linspace(0,2*pi); b=sin(2*a); polar(a,b); title('四叶玫瑰线') subplot(2,2,3) ezplot('3*t/(1+t.^3)','3*(t.^2)/(1+t.^3)',[0 20]); title('叶形线') subplot(2,2,4) f1=inline('log((1+...

郧县18219535134: matlab中subplot是什么意思 -
双逸安得: 使用方法:subplot(m,n,p)或者subplot(m n p).subplot是将多个图画到一个平面上的工具.其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果m=2就是表示2行图.p表示图所在的位置,p=1表示从左到右从上到下的第一个位置. 在matlab的命令窗口中输入doc subplot或者help subplot即可获得该函数的帮助信息.

郧县18219535134: matlab怎么在一个图形窗口中画多个图形 -
双逸安得: 可以采用subplot函数.具体解释subplot(m,n,p);先指定将一个图分为m行n列,当前画图为p.以下以画正弦函数,余弦函数,一次函数和二次函数在【-3,3】范围的图像为例说明如何使用subplot函数. 代码: >> subplot(2,2,1) >> plot(-3:0.01:3,sin(-3:0.01:3)) >> subplot(2,2,2); >> plot(-3:0.01:3,cos(-3:0.01:3)) >> subplot(2,2,3); >> plot(-3:0.01:3,-3:0.01:3) >> subplot(2,2,4); >> plot(-3:0.01:3,(-3:0.01:3).^2)

郧县18219535134: matlab subplot 如何画如图所示的图 -
双逸安得: 举个例子:subplot(2, 2, 1.5); ezplot('sin'); subplot(223); ezplot('sin'); subplot(224); ezplot('sin')

郧县18219535134: matlab中subplot怎么使用? -
双逸安得: subplot就是将Figure中的图像划分为几块,每块当中显示各自的图像,有利于进行比较. 比如Example里面有这样的例子 income = [3.2 4.1 5.0 5.6]; outgo = [2.5 4.0 3.35 4.9]; subplot(2,1,1); plot(income) subplot(2,1,2); plot(outgo) 先用subplot划分Figure为2*1的区域,上面一个显示income,下面一个显示outgo. subplot的格式为(行数,列数,第几个区域的位置),不加逗号也是可以的.

郧县18219535134: 编写matlab程序,在同一图形窗口中(用subplot函数),以子函数形式绘制出四个函数(自己任 -
双逸安得: 比如画sin曲线: t = 0 : 0.01 : 2 * pi; f = sin(t); subplot(2,2,1); plot(t,h,'-','*','r'); 其他的都是类似的 其他的画图注意改为subplot(2,2,2),subplot(2,2,3),subplot(2,2,4)就行了

郧县18219535134: matlab怎样将几个函数图形画一起 -
双逸安得: MATLAB中的函数subplot 使用方法:subplot(m,n,p)或者subplot(m n p). subplot是将多个图画到一个平面上的工具.其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果第一个数字是2就是表示2行图.p是指你现在要把曲线画到figure中哪个图上,最后一个如果是1表示是从左到右第一个位置. 在matlab的命令窗口中输入doc subplot或者help subplot即可获得该函数的帮助信息.

郧县18219535134: 在Matlab中怎么用subplot在同一位置绘制双Y轴坐标的图 -
双逸安得: 先解释一下,subplot 不是画图的程序,而是图形定位的程序(简单点说就是你的图形要放在窗口的哪个位置,eg: subplot(121)共有图形1行2列 此图位于图1).绘制双Y图 用 plotyy(x,y,x,z,'plot','semilogy') ,这条命令是话 x-y 和x-z 的图,而画图的函数分别用的是plot 和 semilogy .想要在同一个坐标系中绘制不同的函数图 用hold on 命令

郧县18219535134: 如何用matlab软件画球面方程 -
双逸安得: 1、双击matlab软件图标,打开matlab软件,可以看到matlab软件的界面.2、通过语句[u,v,w]=sphere(56); 获得绘制球体的三维坐标. 3、使用语句: subplot(2,2,1); plot3(u,v,w); title('plot3()'); 将图片分成四份,在第一行第一列使用plot3(...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网