用matlab画图将原点显示,[转帖] Matlab plot画图时,让原点在图中心
function new_fig_handle = shift_axis_to_origin( fig_handle )
% 本函数目的是把 matlab 做的图坐标轴移到图形的中间部分去(与数学的做图习惯一致)
% 2008.10.10 in pku
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure('Name','shift_axis_to_origin','NumberTitle','off') % Create a new figure
% 拷贝图形到一个新的窗口
new_fig_handle = copyobj( fig_handle , gcf );
xL=xlim ;
yL=ylim ;
xt=get(gca,'xtick') ;
yt=get(gca,'ytick') ;
set(gca,'XTick',[],'XColor','w') ;
set(gca,'YTick',[],'YColor','w') ;
% 把 x 和 y 坐标轴的两个方向各延长 10% (为了视觉上好看)
extend_x = ( xL(2)-xL(1) ) * 0.1 ;
extend_y = ( yL(2)-yL(1) ) * 0.1 ;
xxL = xL + [ -extend_x extend_x] ;
yyL = yL + [ -extend_y extend_y] ;
set(gca,'xlim', xxL) ;
set(gca,'ylim', yyL) ;
pos = get(gca,'Position') ;
box off;
x_shift = abs( yyL(1)/(yyL(2)-yyL(1)) ) ;
y_shift = abs( xxL(1)/(xxL(2)-xxL(1)) ) ;
temp_1 = axes( 'Position', pos + [ 0 , pos(4) * x_shift , 0 , - pos(4)* x_shift*0.99999 ] ) ;
xlim(xxL) ;
box off ;
set(temp_1,'XTick',xt,'Color','None','YTick',[]) ;
set(temp_1,'YColor','w') ;
temp_2 = axes( 'Position', pos + [ pos(3) * y_shift , 0 , -pos(3)* y_shift*0.99999 , 0 ] ) ;
ylim(yyL) ;
box off ;
set(temp_2,'YTick',yt,'Color','None','XTick',[]) ;
set(temp_2,'XColor','w') ;
Base_pos = get(new_fig_handle,'Position') ;
arrow_pos_in_x_dircetion = Base_pos(2) - Base_pos(4) * yyL(1)/(yyL(2)-yyL(1)) ;
arrow_pos_in_y_dircetion = Base_pos(1) - Base_pos(3) * xxL(1)/(xxL(2)-xxL(1)) ;
annotation('arrow',[Base_pos(1) , Base_pos(1)+Base_pos(3)] , [arrow_pos_in_x_dircetion , arrow_pos_in_x_dircetion ] , 'Color','k');
annotation('arrow',[arrow_pos_in_y_dircetion , arrow_pos_in_y_dircetion ] , [Base_pos(2) , Base_pos(2)+Base_pos(4)] , 'Color','k');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
以上程序才有 正确结果,楼主的原来程序,应该有错误的地方,我也是复制我同事给我的程序,绘图不会出错。
用matlab画图将原点显示,[转帖] Matlab plot画图时,让原点在图中心相关推荐
- matlab显示函数表达式_MATLAB在绘图时的用法——线形图
点击上方蓝字 关注我们 MATLAB有很强的绘图功能,我们可以通过简单的代码画出一些直观而漂亮的代码.今天,我们一起来学习基本绘图常用函数. 在MATLAB中绘图首先需要设定x的范围,一般使用冒号来 ...
- matlab仿真结果只显示5s时间,MATLAB仿真时间是怎么确定的啊?
匿名用户 1级 2011-02-21 回答 展开全部 摘要:由于MA7ⅡAB不能直接对硬件端12进行读写操作,缺乏了实时性,使得工程上的应用受到了 极大的限制.而通过MATI.AB应用程序接口Mex调 ...
- matlab等高线图例如何显示,如何在MATLAB中的等高线图的等高线上放置字符串标签...
我想知道是否可以用一组用户定义的字符串标记MATLAB等高线图的轮廓? 我目前正在使用以下代码片段来生成标记的等高线图: %Create Data X = 0.01:0.01:0.10 Y = 0.0 ...
- matlab静态文本框显示,如何在Matlab GUI中利用静态文本框显示程序的结果
www.mh456.com防采集. 调用2113pushbutton的回调函数,再用set让结构在5261文本框中显示.给4102一个简单的例1653子:内pushbutton的回调函数(实现两容个数 ...
- Matlab plot画图 坐标字体、字号、范围、间隔等的设置
Matlab plot画图 坐标字体.字号.范围.间隔等的设置 MATLAB 坐标的数字.范围.间隔调整 matlab绘图的时候只用plot函数出来的图不一定符合自己最想要的格式, 经常要对坐标的数字 ...
- python画图程序没有图_解决python中使用plot画图,图不显示的问题
解决python中使用plot画图,图不显示的问题 对以下数据画图结果图不显示,修改过程如下 df3 = {'chinese':109, 'American':88, 'German': 66, 'K ...
- 用matlab怎么画视电阻率拟断面图,在MATLAB平台上实现可控源音频大地电磁反演数据三维可视化显示...
第29卷 增刊 物探化探计算技术 2007年10月 收稿日期6文章编号:1001-1749(2007)增刊(1)-0068-04 在MAT LAB 平台上实现可控源音频大地 电磁反演数据三维可视化显示 ...
- matlab plot画图指定线型和颜色
matlab plot画图指定线型和颜色 plot(x,y1,'.b'); %b代表蓝色,.代表点; plot(x,y2,'-g'); %g代表绿色,-代表线
- MATLAB plot画图后横轴去除空白
MATLAB plot画图后横轴去除空白 MATLAB plot原来画图都是填充满的,今天不知道怎么了,横轴留有一部分空白,看起来十分不美观,可以修改一下上下限使其美观一些. 方法 x轴上下限设定 x ...
最新文章
- [再寄小读者之数学篇](2014-04-18 from 352558840@qq.com [南开大学 2014 年高等代数考研试题]二次型的零点)...
- OpenCV图像金字塔:高斯金字塔、拉普拉斯金字塔总结
- JS实现App扫码网页端登录
- 參加microsoft主管信息論壇
- docker内存阀值_kubernetes调度之资源耗尽处理配置
- 关于Intel IPP的基本使用方法——参照可设置ipl库
- [iOS]CIFilter滤镜
- 前端笔记(1-20)
- 操作系统学习笔记:内存管理
- 吴恩达机器学习视频学习笔记(3)
- 如何通过SCJP考试(含真题分析和考点)
- 软件工程-软件维护/系统维护
- [W]和[V]的发音
- linux设置小技巧
- MIUI——添加学校邮箱到电子邮件解决方案
- 蓝桥杯2020年第十一届C/C++B组(第一次)省赛习题题解
- Omni Core v0.11.0 rpc-api
- $.inArray()方法
- ZZNUOJ_用C语言编写程序实现1261:小媛在努力(附完整源码)
- 程序员常用的46个快捷键
热门文章
- 怎样把台式机变成虚拟服务器,怎么把文件传到虚拟主机
- window.open怎么设置title_企业seo怎么优化 都有那些策略?
- mqtt服务器收不到设备信息,在我的终端(mosquitto)上显示来自mqtt服务器的json消息...
- 写在使用 Linux 工作一年后
- Veritas面向OpenStack推出全新软件定义存储解决方案
- 面试常考题:不调用库函数,怎样实现字符串操作函数?
- Unity C# 反编译
- Linux常用的基本命令14
- ikvm.net简介
- 旅游解说系统 VS 旅游信息系统