EDA365电子论坛网

标题: matlab用plotyy(A)函和plotxx(B)生成双x/y轴曲线 [打印本页]

作者: baqiao    时间: 2020-4-21 13:28
标题: matlab用plotyy(A)函和plotxx(B)生成双x/y轴曲线
本帖最后由 baqiao 于 2020-4-21 13:35 编辑
% ^7 G& k6 u, S0 ^1 L* @8 i
% A# k5 Q+ }, d/ F

%功能:多重xy轴曲线的绘制

%输入:向量x1,y1,x2,y2

%输出:在同一个曲线图中,有两套x坐标轴(可以的话可以做两套y轴)


: S2 G9 L, i, j" N1 g8 \

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

x1=1:10;

y1=1:10;

x2=1:10;

y2=5:14;


0 O- l& r, [) \  P

hl1 = line(x1,y1,'Color','r');%第一条曲线的绘制,以默认的主xy轴为坐标


, H- N' Z& |8 d$ m$ f$ x; w$ s9 C" h

ax1 = gca;%设置主坐标轴的颜色,用默认的位置,设定颜色

set(ax1,'XColor','r','YColor','r')

9 |# W1 ~' D3 d* G: A. t. y; j

%创建第二套坐标轴,设定颜色及位置

ax2=axes('Position',get(ax1,'Position'),...

           'XAxisLocation','top',...

           'YAxisLocation','right',...

           'Color','none',...

           'XColor','k','YColor','k');

4 A6 r, r) |7 U* S6 ]9 r4 T

hl2 = line(x2,sin(x2),'Color','k','Parent',ax2);%第二条曲线的绘制,以ax2为坐标系

( v" x# u0 v0 O; j

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


9 a8 l2 P0 ?3 u- h

注意:


- c, U8 h( ~6 @) L" z( ?0 p2 w

(1)改变x1y1x2y2就可以实现plotyy()和plotxx()的功能;


1 `  ~5 L4 I; c; R; u

(2)因为line()axes()为low_level函数,因此都是在主窗口句柄中绘制,不会产生子窗口,所以当想多增添一条曲线时,直接再用line()函数即可,不用像plot()那样还得用hold on语句。


: R. I% h  A4 D  o9 c
作者: CCxiaom    时间: 2020-4-21 13:36
matlab用plotyy(A)函和plotxx(B)生成双x/y轴曲线
作者: yin123    时间: 2020-4-22 13:14
matlab用plotyy(A)函和plotxx(B)生成双x/y轴曲线




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2