
箭頭加直線_【Matlab學(xué)習(xí)秘籍】繪制帶箭頭的流線
問(wèn)題來(lái)源:某討論小班建構(gòu)區(qū)教案 群某同學(xué)的提問(wèn),想做出?個(gè)帶有箭頭電場(chǎng)的流線圖。
繪制流線,Matlab提供了streamline函數(shù),由于我也是哺乳期牙痛怎么辦 第?次遇到這個(gè)問(wèn)題,于是乎打開(kāi)streamline的幫助?檔,然后仔細(xì)查看?番,?
?便有了思路,開(kāi)始動(dòng)?實(shí)踐,下?就以這個(gè)函數(shù)的官?幫助?檔?的demo來(lái)演?,如何實(shí)現(xiàn)在流線上繪制箭頭。
clear;clc;
%直接把streamline函數(shù)的幫助?檔demo拷貝過(guò)來(lái)
[x,y]=meshgrid(0:0.1:1,0:0.1:1);
u=x;
v=-y;
startx=0.1:0.1:0.9;
starty=ones(size(startx));
%需要獲取所有流線的屬性
lines=streamline(x,y,u,v,startx,starty);
%下?開(kāi)始畫箭頭,涉及到坐標(biāo)的轉(zhuǎn)換
%獲取Axes位置
posAxes=get(gca,'Position');
posX=posAxes(1);
posY=posAxes(2);
width=posAxes(3);
height=posAxes(4);
%獲取Axes范圍
limX=get(gca,'Xlim');
limY=get(gca,'Ylim');
minX=limX(1);
maxX=limX(2);
minY=limY(1);
maxY=limY(2);
%遍歷,逐條流線加箭頭
fori=1:紅豆怎么煮 length(lines)
%獲取每條流線的數(shù)據(jù)
xData=lines(i).XData;
yData=lines(i).YData;
%這?取的是最后兩個(gè)點(diǎn),?定要是相鄰飛機(jī)簡(jiǎn)筆畫圖片 的兩個(gè)點(diǎn)?來(lái)確定箭頭?向
x0=xData(end-1:end);
y0=yData(end-1:end);
%轉(zhuǎn)換坐標(biāo)到相對(duì)于figure的坐標(biāo)
xNew=posX+(x0-minX)/(maxX-minX)*width;
yNew=posY+(y0-生肖兔和什么生肖最配 minY)/(maxY-minY)*height;
%畫箭頭
holdon
annotation('arro蘑菇做法 w',xNew,yNew,'color','b');
end正能量網(wǎng)名
holdoff
title('帶箭頭的流線圖');
看看效果圖:
帶有箭頭的流線圖
【秘籍】
1.獲取流線的坐標(biāo)數(shù)據(jù),如何獲取,查看幫助?檔得知,繪制時(shí)賦值即可獲取到所有繪制對(duì)象的屬性,然后逐條流線獲取數(shù)據(jù)即可;
2.繪制箭頭,這個(gè)?法前?也有?章提到過(guò)(【Matlab學(xué)習(xí)秘籍】繪制帶箭頭直線),這?把主要過(guò)程也重復(fù)了?遍;
3.關(guān)于箭頭的兩個(gè)坐標(biāo),選取兩個(gè)相鄰的點(diǎn),?便確定箭頭的?向。
本文發(fā)布于:2023-03-20 14:06:43,感謝您對(duì)本站的認(rèn)可!
本文鏈接:http://m.newhan.cn/zhishi/a/1679292404151886.html
版權(quán)聲明:本站內(nèi)容均來(lái)自互聯(lián)網(wǎng),僅供演示用,請(qǐng)勿用于商業(yè)和其他非法用途。如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除。
本文word下載地址:流線圖.doc
本文 PDF 下載地址:流線圖.pdf
| 留言與評(píng)論(共有 0 條評(píng)論) |