matlab局部放大的圖中圖畫法

【親測有效

在作圖過程中,如果想將局部信息展示出來并且畫在同一張圖中,一般的MATLAB作圖法就比較拙計了,好在MATLAB還是很強大的,當然,除了不能當女朋友之外 .... ╮(╯▽╰)╭

 function showdetail()% 在當前的axes上操作,用矩形框選出感興趣的一
% 塊區域然后在現有的axes里新建一axes將其畫出set(gcf,'color','white'); 
% 拿到axes在figure中的坐標值及其刻度值分布范圍
Pos   = get(gca,'Position');
X0    = Pos(1);
Y0    = Pos(2);
DX    = Pos(3);
DY    = Pos(4);
DLX   = xlim;
DLY   = ylim;% 拿到axes中曲線數據
h     = findobj(gcf,'Type','line');
xdata = get(h,'XData');
ydata = get(h,'YData');
Color             = get(h,'Color');
LineStyle         = get(h,'LineStyle');
LineWidth         = get(h,'LineWidth');
Marker            = get(h,'Marker');
MarkerSize        = get(h,'MarkerSize');
MarkerEdgeColor   = get(h,'MarkerEdgeColor');
MarkerFaceColor   = get(h,'MarkerFaceColor');% 選取需要放大顯示的細節部分ROI
h1   = imrect;                   % 框選出需要的區域
wait(h1);
pos  = getPosition(h1);          % 返回區域的位置和大小 
x0   = pos(1);
y0   = pos(2);
dx0  = pos(3);
dy0  = pos(4);% 細節部分的下標
if  iscell(xdata) == 0 indx1  = find( xdata >= x0 );indx2  = find( xdata <= x0+dx0 );indx   = indx1(1):indx2(end);
elsem      = length(xdata);indx1  = find( xdata{1}>=x0 );indx2  = find( xdata{1}<=x0+dx0 );indx   = indx1(1):indx2(end);
endhold on;
LineX = x0:dx0/10:x0+dx0;
LineY = y0:dy0/10:y0+dy0;
plot(LineX,y0*ones(size(LineX)),'k');
plot(LineX,(y0 + dy0)*ones(size(LineX)),'k');
plot(x0*ones(size(LineY)),LineY,'k');
plot((x0+dx0)*ones(size(LineY)),LineY,'k');h2  = imrect;                 
wait(h2);
pos = getPosition(h2);       
x   = pos(1);
y   = pos(2);
dx  = pos(3);
dy  = pos(4);xn  = X0 + DX*(x - DLX(1))/( DLX(2) - DLX(1) );
yn  = Y0 + DY*(y - DLY(1))/( DLY(2) - DLY(1) );
dxn = DX*dx / ( DLX(2) - DLX(1) );
dyn = DY*dy / ( DLY(2) - DLY(1) );
delete(h1);
delete(h2);
axes('Position', [xn yn dxn dyn]);if  iscell(xdata) == 0 plot(xdata(indx),ydata(indx),...'Color',Color,...'LineStyle',LineStyle,...'LineWidth',LineWidth,...'Marker',Marker,...'MarkerSize',MarkerSize,...'MarkerEdgeColor',MarkerEdgeColor,...'MarkerFaceColor',MarkerFaceColor);
elsefor i = 1:mplot(xdata{i}(indx),ydata{i}(indx),...'Color',Color{i},...'LineStyle',LineStyle{i},...'LineWidth',LineWidth{i},...'Marker',Marker{i},...'MarkerSize',MarkerSize{i},...'MarkerEdgeColor',MarkerEdgeColor{i},...'MarkerFaceColor',MarkerFaceColor{i});hold on;endend
set( gca , 'Box', 'off');
axis([x0 x0+dx0 y0 y0+dy0]);
hold off;end

先準備好一張圖,然后直接在命令行里運行

showdetail();

然后分為如下幾部操作:

【1】這是事先準備好的一張圖

?

【2】運行程序后選擇ROI,即感興趣的區域,雙擊左鍵確定

?

?

【3】選擇你想要放置的地方,雙擊左鍵確定

?

?

【4】成品圖

?

再次感受到了MATLAB的強大。。。。。當然,這里并沒講什么氣泡動力學,只是借用了一張數值解的圖......( ̄▽ ̄).....,下一章應該會講一講瑞利氣泡動力學 ( ̄︶ ̄)

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258497.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258497.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258497.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

進入Python世界——Python基礎知識

本文通過實例練習Python基礎語法, python版本2.7 # -*- coding: utf-8 -*- import randomimport re import requests from bs4 import BeautifulSoup# 爬取糗事百科的首頁內容 def qiushibaike():content requests.get(http://www.qiushibaike.com/).contentsoup BeautifulS…

db2 版本發布歷史_數據庫各廠商的發展歷史(2. DB2 of IBM)

如若轉載&#xff0c;請務必注明出處&#xff0c;iihero 2008.9.26于CSDN1973年&#xff0c;IBM研究中心啟動System R項目&#xff0c;為DB2的誕生打下良好基礎。System R 是 IBM 研究部門開發的一種產品&#xff0c;這種原型語言促進了技術的發展并最終在1983年將 DB2 帶到了商…

android---簡單的通訊錄

遺留問題:獲取頭像及其他信息 利用adapter和Cursor來獲取聯系人的姓名和手機號,重在復習之前學過的內容加深自己的理解. 其中需要注意的部分: 1.adapter中的getview的優化問題,用到tag這一屬性 2.onBackPressed()返回方法的重寫,使得程序更加人性化 下面是主要代碼 1.adapte…

win phone 獲取并且處理回車鍵事件

參考自&#xff1a;http://www.cnblogs.com/mohe/archive/2013/03/18/2966540.html 實用場景,比如輸入帳號和密碼啦,輸入搜索關鍵字啦.protected override void OnKeyDown(KeyEventArgs e) {if (e.Key Key.Enter){MessageBox.Show("我是windows phone 回車鍵"); …

【2020年】最新中國科學院大學學位論文寫作規范

最近在完成國科大博士論文寫作的時候&#xff0c;有一些心得體會&#xff0c;特此總結下來&#xff0c;以饗讀者&#xff0c;尤其是可愛的學弟學妹們。需要注意的是&#xff0c; 以下僅僅是我自己的心得而已&#xff0c;僅供參考。 1. 首先推薦大家使用國科大的Latex模板&…

談談Java基礎數據類型

Java的基本數據類型 類型意義取值boolean布爾值true或falsebyte8位有符號整型-128~127short16位有符號整型-pow(2,15)~pow(2,15)-1int32位有符號整型-pow(2,31)~pow(2,31)-1long64位有符號整型-pow(2,63)~pow(2,63)-1float32位浮點數IEEE754標準單精度浮點數double64位浮點數IE…

用fft對信號進行頻譜分析實驗報告_示波器上的頻域分析利器,Spectrum View測試分析...

簡介&#xff1a;【Spectrum View技術文章系列】從基礎篇開始&#xff0c;講述利用示波器上的Spectrum View功能觀測多通道信號頻譜分析正文&#xff1a;示波器和頻譜儀都是電子測試測量中必不可少的測試設備&#xff0c;分別用于觀察信號的時域波形和頻譜。時域波形是信號最原…

DataTable RowFilter 過濾數據

用Rowfilter加入過濾條件 eg&#xff1a; string sql "select Name,Age,Sex from UserInfo"; DataTable dt DataAccess.GetDataTable(sql);//外部方法&#xff08;通過一條查詢語句返回一個DataTable&#xff09; dt.DefaultView.RowFilter "Sex女"; dt…

platform_device與platform_driver

做Linux方面也有三個多月了&#xff0c;對代碼中的有些結構一直不是非常明確&#xff0c;比方platform_device與platform_driver一直分不清關系。在網上搜了下&#xff0c;做個總結。兩者的工作順序是先定義platform_device -> 注冊 platform_device->&#xff0c;再定義…

復盤caffe安裝

最近因之前的服務器上的caffe奔潰了&#xff0c;不得已重新安裝這一古老的深度學習框架&#xff0c;之前也嘗試了好幾次&#xff0c;每次都失敗&#xff0c;這次總算是成功了&#xff0c;因此及時地總結一下。 以下安裝的caffe主要是針對之前虹膜分割和鞏膜分割所需的caffe版本…

HP P2000 RAID-5兩塊盤離線的數據恢復報告

1. 故障描述本案例是HP P2000的存儲vmware exsi虛擬化平臺&#xff0c;由RAID-5由10塊lT硬盤組成&#xff0c;其中6號盤是熱備盤&#xff0c;由于故障導致RAID-5磁盤陣列的兩塊盤掉線&#xff0c;表現為兩塊硬盤亮黃燈。 經用戶方維護人員檢測&#xff0c;故障硬盤應為物理故障…

微智魔盒騙局_微智魔盒官宣

原標題&#xff1a;微智魔盒官宣微智魔盒官方宣傳視頻微達國際集團創建于2011年&#xff0c;是一家堅持創新的集科研、產銷、服務為一體的智能化產業平臺&#xff0c;致力于國際領先的專注人工智能領域的產業投資、項目孵化、教育培訓&#xff0c;并提供終極解決方案。集團創新…

瑞柏匡丞_移動互聯的發展現狀與未來

互聯網作為人類文明史上最偉大、最重要的科技發明之一&#xff0c;發展到今天&#xff0c;用翻天覆地來形容并不過分。而作為傳統互聯網的延伸和演進方向&#xff0c;移動互聯網更是在近兩年得到了迅猛的發展。如今&#xff0c;越來越多的用戶得以通過高速的移動網絡和強大的智…

android 進程間通信數據(一)------parcel的起源

關于parcel&#xff0c;我們先來講講它的“父輩” Serialize。 Serialize 是java提供的一套序列化機制。但是為什么要序列化&#xff0c;怎么序列化&#xff0c;序列化是怎么做到的&#xff0c;我們將在本文探討下。 一&#xff1a;java 中的serialize 關于Serialize這個東東&a…

為什么torch.nn.Linear的表達形式為y=xA^T+b而不是常見的y=Ax+b?

今天看代碼&#xff0c;對比了常見的公式表達與代碼的表達&#xff0c;發覺torch.nn.Linear的數學表達與我想象的有點不同&#xff0c;于是思索了一番。 眾多周知&#xff0c;torch.nn.Linear作為全連接層&#xff0c;將下一層的每個結點與上一層的每一節點相連&#xff0c;用…

Leetcode47: Palindrome Linked List

Given a singly linked list, determine if it is a palindrome. 推斷一個鏈表是不是回文的&#xff0c;一個比較簡單的辦法是把鏈表每一個結點的值存在vector里。然后首尾比較。時間復雜度O(n)。空間復雜度O(n)。 /*** Definition for singly-linked list.* struct ListNode {…

內存顆粒位寬和容量_SDRAM的邏輯Bank與芯片容量表示方法

1、邏輯Bank與芯片位寬講完SDRAM的外在形式&#xff0c;就該深入了解SDRAM的內部結構了。這里主要的概念就是邏輯Bank。簡單地說&#xff0c;SDRAM的內部是一個存儲陣列。因為如果是管道式存儲(就如排隊買票)&#xff0c;就很難做到隨機訪問了。陣列就如同表格一樣&#xff0c;…

[Unity菜鳥] Time

1. Time.deltaTime 增量時間 以秒計算&#xff0c;完成最后一幀的時間(秒)(只讀) 幀數所用的時間不是你能控制的。每一幀都不一樣&#xff0c;游戲一般都是每秒60幀&#xff0c;也就是updata方法調用60次&#xff08;假如你按60幀來算 而真實情況是不到60幀 那么物體就不會運動…

【轉】七個例子幫你更好地理解 CPU 緩存

我的大多數讀者都知道緩存是一種快速、小型、存儲最近已訪問的內存的地方。這個描述相當準確&#xff0c;但是深入處理器緩存如何工作的“枯燥”細節&#xff0c;會對嘗試理解程序性能有很大幫助。在這篇博文中&#xff0c;我將通過示例代碼來說明緩存是如何工作的&#xff0c;…

Pytorch——對應點相乘和矩陣相乘

1. 點乘&#xff0c;對應元素相乘&#xff0c;不求和 import torcha torch.Tensor([[1,2], [3,4], [5,6]]) b1 a.mul(a)// b2a*a b1 Out[79]: tensor([[ 1., 4.],[ 9., 16.],[25., 36.]]) b2 Out[80]: tensor([[ 1., 4.],[ 9., 16.],[25., 36.]]) 以上兩種方法都可以表…