Matlab plotyy画双纵坐标图实例

x = 0:0.01:20;

y1 = 200*exp(-0.05*x).*sin(x);

y2 = 0.8*exp(-0.5*x).*sin(10*x);

[AX,H1,H2] = plotyy(x,y1,x,y2,'plot');

set(AX(1),'XColor','k','YColor','b');

set(AX(2),'XColor','k','YColor','r');

HH1=get(AX(1),'Ylabel');

set(HH1,'String','Left Y-axis');

set(HH1,'color','b');

HH2=get(AX(2),'Ylabel');

set(HH2,'String','Right Y-axis');

set(HH2,'color','r');

set(H1,'LineStyle','-');

set(H1,'color','b');

set(H2,'LineStyle',':');

set(H2,'color','r');

legend([H1,H2],{'y1 = 200*exp(-0.05*x).*sin(x)';'y2 =

0.8*exp(-0.5*x).*sin(10*x)'});

xlabel('Zero to 20 musec.');

title('Labeling plotyy');

Q:右边用蓝色圈起来的tick能去掉吗?由于用plotyy画图,为了使图尽量地显示出来,用了set(AX(1),'YLimMode','auto'),但这样可能会导致左边AX(1)和右边AX(2)的tick的间距不一样,影响美观。或者说能不能使plotyy画出的图两边的tick间距是一样的,这样在图形右边的tick就会重合在一起.

A:如果只是想让plotyy的图美一些,可以使用其如下形式的调用方式:

[AX,H1,H2] = plotyy(...)

其中AX(2)就是右边Axes对象的句柄,拿到它以后就可以set或者get来处理了,也可以把其ytick关掉。

A:也可以用line语句来画,就没有左边和上边的线了。

Q:plotyy(X1,Y1,X2,Y2,FUN1,FUN2),FUN1和FUN2应该怎么写?

A:这两个FUN代表plotyy不一定要用两个plot,比如下面的例子,一条曲线用plot,一条用semilogy

x1=1:0.1:100;

x2=x1;

y1=x1;

y2=x2.^3;

plotyy(x1,y1,x2,y2,@plot,@semilogy)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MATLAB画双纵坐标

具有两个纵坐标标度的图形

在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。调用格式为:

plotyy(x1,y1,x2,y2)

其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。

双y轴坐标可以用plotyy(x,y1,x,y2)来实现

双x坐标可以用

set(gca,'xaxislocation','bottom','xticklabel',{'0','1','2','3','4'})

(假设x轴的标注为1,2,3,4)

set(gca,'xaxislocation','top','xticklabel',{'0','1','2','3','4'})

进行相应的设置

【 * 例 10.7.3 -1 】制作一个双坐标系用来表现高压和低温两个不同量的过渡过程。

tp=(0:100)/100*5;yp=8+4*(1-exp(-0.8*tp).*cos(3*tp)); % 压力数据

tt=(0:500)/500*40;yt=120+40*(1-exp(-0.05*tt).*cos(tt)); %

温度数据

% 产生双坐标系图形

clf reset,h_ap=axes('Position',[0.13,0.13,0.7,0.75]);

%<4>

set(h_ap,'Xcolor','b','Ycolor','b','Xlim',[0,5],'Ylim',[0,15]);

nx=10;ny=6; %<6>

pxtick=0:((5-0)/nx):5;pytick=0:((15-0)/ny):15;

%<7>

set(h_ap,'Xtick',pxtick,'Ytick',pytick,'Xgrid','on','Ygrid','on')

h_linet=line(tp,yp,'Color','b');

%<9>

set(get(h_ap,'Xlabel'),'String',' 时间 /rightarrow (分) ')

set(get(h_ap,'Ylabel'),'String',' 压力 /rightarrow(/times10 ^{5}

Pa )')

h_at=axes('Position',get(h_ap,'Position'));

%<12>

set(h_at,'Color','none','Xcolor','r','Ycolor','r');

%<13>

set(h_at,'Xaxislocation','top')

%<14>

set(h_at,'Yaxislocation','right','Ydir','rev')

%<15>

set(get(h_at,'Xlabel'),'String','/fontsize{15}/fontname{ 隶书 } 时间

/rightarrow (分) ')

set(get(h_at,'Ylabel'),'String',' ( {/circ}C )/fontsize{15}

/leftarrow /fontname{ 隶书 } 零下温度 ')

set(h_at,'Ylim',[0,210]) %<18>

line(tt,yt,'Color','r','Parent',h_at)

%<19>

xpm=get(h_at,'Xlim'); %<20>

txtick=xpm(1):((xpm(2)-xpm(1))/nx):xpm(2);

%<21>

tytick=0:((210-0)/ny):210;

%<22>

set(h_at,'Xtick',txtick,'Ytick',tytick)

%<23>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

实例(已验证):

clc;

clear all;

close all;

x=0:0.1:2*pi;

y1=sin(x);

y2=cos(x);

[AX]=plotyy(x,y1,x,y2);

set(get(gca,'xlabel'),'string','X-axis');

set(get(AX(1),'Ylabel'),'string','left Y-axis');

set(get(AX(2),'Ylabel'),'string','right Y-axis');

set(gca,'xTick',[0:0.5:7]);

set(AX(1),'yTick',[-1:0.2:1]);

set(AX(2),'yTick',[-1:0.5:1]);

尚存在问题:这种设置方法,对各个轴的最小刻度单位可以设置,但是刻度范围(x取(0~7),y1取(-1~1))不能设置。

2010-12-23修改

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

clc

clear all

close all

runoff=[10700 11400 15800 22900 43100 40700 50500 46000 41800

35000];

sed=[0.105 0.094 0.156 1.264 0.363 0.429 0.731 0.682 0.654 0.290];

m=1:10;

[ax,h1,h2]=plotyy(m,runoff,m,sed); %h-- line handle

set(get(ax(1),'Ylabel'),'string','Runoff (m^3/s))','color','r')

%y1

set(get(ax(2),'Ylabel'),'string','Sediment concentration

(kg/m^3)','color','k') %y2

xlabel('Month')

set(h1,'linestyle','-','color','r'); set(h2,'linestyle','- -','color','k');

legend([h1 h2],'runoff','sediment concentration') %标注两条线

legend('boxoff')

% box off

set(ax(:),'Ycolor','k') %设定两个Y轴的颜色为黑色

set(ax(1),'ytick',[0:10000:100000]); %设置y轴间隔

set(ax(2),'ytick',[0:0.1:1.5])

set(ax,'xlim',[1 12]) % 设置x轴范围

hold on

scatter(ax(1),4,22900,'r*')

axes(ax(2));

hold on

scatter(4,1.264,'ro')

2011年4月22日新增

matlab plotyy 坐标轴设置,[转载]Matlab plotyy画双纵坐标图实例相关推荐

  1. matlab 3个纵坐标,[转载]Matlab plotyy画双纵坐标图实例

    Matlab plotyy画双纵坐标图实例 x = 0:0.01:20; y1 = 200*exp(-0.05*x).*sin(x); y2 = 0.8*exp(-0.5*x).*sin(10*x); ...

  2. Matlab plotyy画双纵坐标图实例

    转载自:http://blog.sina.com.cn/s/blog_49d955150100lxoe.html Matlab plotyy画双纵坐标图实例 x = 0:0.01:20; y1 = 2 ...

  3. matlab imagesc参数设置,[转载]matlab 中imagesc的用法

    imagesc(A) 将矩阵A中的元素数值按大小转化为不同颜色,并在坐标轴对应位置处以这种颜色染色 imagesc(x,y,A) x,y决定坐标范围,x,y应是两个二维向量,即x=[x1 x2],y= ...

  4. matlab双纵坐标的绘图命令_MATLAB画双纵坐标

    MATLAB画双纵坐标 具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数.调用格式为: plotyy(x1,y1,x2,y2) 其中 ...

  5. matplotlib 画双轴子图无法显示 x-轴 坐标轴标签

    主要问题 1.介绍 如题,画双轴子图不能显示 x-轴坐标轴标签,似乎 "双轴"与"子图"存在冲突有关,当前版本是 anaconda 3.7.4.比较奇葩的是 我 ...

  6. MATLAB绘画双纵坐标图改纵坐标颜色都为黑色

    代码部分: 实现内容:画双纵坐标 限制纵坐标界限 将图例横向放置 接下来是改变坐标轴颜色的操作 这里会发现,直接修改边框的颜色,右纵坐标的颜色是不会改变的. 接下来可以通过Y轴的属性进行调节

  7. matlab双纵坐标的绘图命令_[转载]MATLAB画双纵坐标 plotyy的用法 对数坐标

    具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数.调用格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线, ...

  8. matlab. set坐标轴,matlab绘图坐标轴设置

    matlab坐标轴设置: 简单的曲线:y=sin(x); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% x=-pi/2:0.01:pi/2; y=sin(x); plot(x, ...

  9. matlab legend 太大,[转载]MATLAB中调整legend的大小位置

    MATLAB中plot命令绘图微调的几个注记 1.MATLAB如何从硬盘读取文件. 2.如何微调subplot子图的位置. 3.plot命令绘曲线时,曲线上的标志如何调整大小. 4.坐标轴的调整. 6 ...

  10. matlab实现ENVI2%线性拉伸及底图上画双坐标系剖面线

    MATLAB实现ENVI2%线性拉伸 一. MATLAB实现ENVI线性拉伸 1.参考链接,程序主体来源于: 2.程序修改适用于RGB影像 (1)修改内容介绍: (2)程序介绍: 二.matlab在底 ...

最新文章

  1. MySQL数据表的创建、查看、插入
  2. 网络最大流的三种基础算法
  3. pandas(一)-- Series创建及索引
  4. ffplay命令汇总
  5. react-github案例
  6. 【论文笔记】一种有效攻击BERT等模型的方法
  7. ST2-045 For POC
  8. Python爬虫:用BeautifulSoup进行NBA数据爬取
  9. .JS replace方法替换所有字符
  10. java new string编码_Java String 类型编码转换
  11. STM32 高级定时器 输出PWM波
  12. 2010最新***工具包
  13. 【HAVENT原创】让 axios 支持 jsonp
  14. 项目管理常用的工具推荐——WBS、甘特图、燃尽图
  15. 没有被遣返的人生是不完整的
  16. 对人工智能的一点看法
  17. 老司机亲自整理的和弦知识让你事半功倍学乐理
  18. 产品读书《高效能人士的七个习惯》
  19. axure原型怎么让文字自动换行_Axure骚操作系列:“生成”手机APP
  20. 云密码技术--北京商密协会《云密码服务技术白皮书2019》

热门文章

  1. Ubuntu 各版本代号简介
  2. Orcad capture
  3. unity3d 坦克大战实战
  4. 库存JAVA_Java解决高并发下商品库存更新
  5. HDU 4699 题解
  6. 金域医学与华为云联合,AI辅助宫颈癌筛查方案获得阶段性突破
  7. 638-字符串模式匹配-KMP算法
  8. python大神的成长之路普通话三分钟_我的成长之路普通话考试讲话三分钟范文
  9. chromecast 协议_如何设置新的Chromecast
  10. 程序员的第一次相亲,还没开始,就已经结束了