Matlab plotyy画双纵坐标图实例
转载自:http://blog.sina.com.cn/s/blog_49d955150100lxoe.html
Matlab plotyy画双纵坐标图实例 x = 0:0.01:20; set(AX(1),'XColor','k','YColor','b'); HH1=get(AX(1),'Ylabel'); HH2=get(AX(2),'Ylabel'); set(H1,'LineStyle','-'); legend([H1,H2],{'y1 = 200*exp(-0.05*x).*sin(x)';'y2 = 0.8*exp(-0.5*x).*sin(10*x)'}); Q:右边用蓝色圈起来的tick能去掉吗?由于用plotyy画图,为了使图尽量地显示出来,用了set(AX(1),'YLimMode','auto'),但这样可能会导致左边AX(1)和右边AX(2)的tick的间距不一样,影响美观。或者说能不能使plotyy画出的图两边的tick间距是一样的,这样在图形右边的tick就会重合在一起. A:如果只是想让plotyy的图美一些,可以使用其如下形式的调用方式: 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)
来源:http://hi.baidu.com/wang_pw/blog/item/ede4c1fd6e51773d5c6008f2.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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>
来源:http://hi.baidu.com/goodenoughcui/blog/item/e9a00b8b7ad52d6f9e2fb4d2.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
实例(已验证):
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’)
来源:http://hi.baidu.com/imhuanxi/blog/item/a1f69bcadf68a54af21fe7d2.html
Matlab plotyy画双纵坐标图实例相关推荐
- 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); ...
- matlab双纵坐标的绘图命令_MATLAB画双纵坐标
MATLAB画双纵坐标 具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数.调用格式为: plotyy(x1,y1,x2,y2) 其中 ...
- MATLAB绘画双纵坐标图改纵坐标颜色都为黑色
代码部分: 实现内容:画双纵坐标 限制纵坐标界限 将图例横向放置 接下来是改变坐标轴颜色的操作 这里会发现,直接修改边框的颜色,右纵坐标的颜色是不会改变的. 接下来可以通过Y轴的属性进行调节
- matplotlib 画双轴子图无法显示 x-轴 坐标轴标签
主要问题 1.介绍 如题,画双轴子图不能显示 x-轴坐标轴标签,似乎 "双轴"与"子图"存在冲突有关,当前版本是 anaconda 3.7.4.比较奇葩的是 我 ...
- Matlab plotyy画2个纵坐标不同的图
目录 plotyy函数可以绘制双纵坐标的二维图,具体用法总结如下: 1. 如何设置双坐标 2. 如何设置线型 3. 加注图例 plotyy函数可以绘制双纵坐标的二维图,具体用法总结如下: 1.plot ...
- Matlab关于画数据网格图
1.surf(Z): Z为一个矩阵,如果Z是向量,那么就需要先将其转换为矩阵 reshape(Z,[length(X),length(Y)]); X和Y为你的横坐标取值个数. 具体代码调用格式如下 ...
- matlab如何画双x坐标,matlab画双坐标图
整理了一下matlab画双坐标的代码,具体如下.如果想分别设置双坐标的label,可以设置Ylim,YTick和YTickLabel. clc;clear; x=1:20; y1=100*ones(1 ...
- Matlab(2018b)画箱线图技巧
Matlab 箱线图并美化 目的:用matlab 画线箱图,并美化.以及x标签过长,如何分两行展示的问题 步骤: 先画箱线图,借助matlab的boxplot函数 x = randn(5); boxp ...
- MatLab中画树状图方法treeplot(nodes)中描述树结构的矢量nodes的构造
按要求需要用matlab画树状图,在网络上找到两句代码: nodes = [0 1 2 2 4 4 4 1 8 8 10 10]; treeplot(nodes); 画出了如下图: 其中矢量nodes ...
最新文章
- [转]Flex unit testflex-4-create-a-simple-unit-test-in-flash-builder
- OpenCV图像处理使用笔记(一)——使用鼠标选取任何形状的ROI
- iservice list方法_MyBatis-Plus 通用IService使用详解
- mysql-5.7.21 二进制安装 | Jemalloc内存优化 | 备份恢复|修改密码
- Java Selenium Actions模拟鼠标拖动dragAndDrop总结
- Spark SQL之RDD转DataFrame
- IDEA在线和离线安装lombok
- 理解[].forEach.call()
- 程序员,小红书王牌生活记录家。这是一篇记录程序员生涯的笔记。
- DOM操作简易年历案例
- python 多线程爬虫下载中图分类号
- 做完系统回来计算机连接不上网络,win7重装系统之后连不上网的原因和解决方案...
- 【金猿产品展】北森一体化人才管理云平台:让中国企业拥有世界领先的人才管理能力...
- Flash builder 4无法调试问题
- hdu3294-Girls' research
- html页面设计参考文献英文,网页设计网站参考文献(国外英文资料).doc
- 触摸控件与显示控件介绍
- matlab中画网格,matlab怎么画网格
- 【讲座笔记】如何让你的皮肤变年轻?
- php layui弹出修改功能,非常好用的弹出层 layer,常用功能demo,快速上手!
热门文章
- 2-eggs-100-floors-puzzle(扔两个鸡蛋问题)
- 决策树与随机森林(从入门到精通)
- 应用系统报错:com.highgo.jdbc.util.PSQLException:bad value for long
- IE浏览器的一些技巧
- 百度成小满运维面试题
- 暄桐林曦老师浅谈“如何加强专注自律”
- Sorry, you have been blocked !vultr 又被 openai 屏蔽了,只能换个 vps 了
- 基于sinc的音频重采样(一):原理
- 如何使用PTGUI全景合成软件进行照片拼接
- 国科大学习资料--多媒体分析与理解(卢汉请)-2019期末考试题