怎樣在matlab中將兩個圖畫在同坐標軸中

2021-07-13 23:05:00 字數 4735 閱讀 5624

1樓:好程式設計師

一般來講有以下三種方法:

1、使用hold on語句,hold on說明當前畫圖結束後,告訴計算機我還需要往這個圖上新增東西,再次使用plot畫圖即可實現。

2、用.m檔案函式:

例如:function y=myfun(x)y(:,1)=sin(x);

y(:,2)=cos(x);

y(:,3)=x^(1/2)-1;

然後呼叫:fplot('myfun',[0 2*pi])即可實現三個函式影象出現在同一個座標軸中。

3、或者直接: fplot('[sin(x),cos(x),sqrt(x)-1]',[0 2*pi])將函式解除安裝fplot的三個引數中

2樓:匿名使用者

clear

r1=8*10^(-3);

c1=1500;

i=10;

r=1.5;

t=[0:100:400];

a=-r1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));

b=-t.*(r^4+r^2+1)*(r+1)/(r1*c1*(r^2+r+1)*(r^2+1));

c=(r1*r^8*(r+1)+r1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));

d=t*r^4/(c1*(r^4+r^2+1));

e=2.718.^b;

v1=i.*(a.*e+c+d);

plot(t,v1)

hold on; %%% 增添hold on 命令即可

clear

r1=8*10^(-3);

c1=1500;

i=10;

r=1.5;

t=[400:10:1000];

a=-r1*r^4*(r-1)^2*(r^2+r+1)/((r^4+r^2+1)^2*(r+1));

b=-t.*(r^4+r^2+1)*(r+1)/(r1*c1*(r^2+r+1)*(r^2+1));

c=(r1*r^8*(r+1)+r1*r^2*(r^2+1)^2)/((r+1)*(r^4+r^2+1));

d=400*r^4/(c1*(r^4+r^2+1));

e=2.718.^b;

f=-(t-400).*(r^4+r^2+1)*(r+1)/(r1*c1*(r^2+r+1)*(r^2+1));

g=2.718.^f;

v2=i.*(a.*e-a.*g+d);

plot(t,v2)

3樓:匿名使用者

使用hold on/off指令,可以實現重複繪圖。

matlab中生成的倆張figure圖,如何使他們畫到同一個圖中。

4樓:匿名使用者

感覺抄樓上兩位的回答有點跑偏。樓主bai是不是想把保du存在兩個.fig檔案合併到一個圖?zhi

如果有繪圖所需的資料,dao最好是修改**在一個圖中重新繪製;如果沒有資料只有fig檔案,處理起來就稍微麻煩一點,還要看你原始的圖裡面都有什麼內容(曲線,影象,控制元件。。。),以及合併之後要什麼效果,比如,用子圖還是畫到同一個座標系中?甚至,原來兩個圖中的內容疊加(可能覆蓋)?

建議樓主最好把圖貼出來,並說明想要的效果。

5樓:匿名使用者

如果你是想把兩bai條du

線畫在同一個圖中的zhi話,使用

plot(線dao1)

hold on

plot(線2)

如果是想把兩個圖並版排放在

權一個figure中,使用subplot()函式subplot(1,2,1)

plot(圖1)

subplot(1,2,2)

plot(圖2)

6樓:浪小客

1、啟動matlab,主介面如圖所示,單擊new script。

2、在彈出編輯器中輸入**,如下所示。

3、單擊「儲存版」並將其命名為權zitu。當然,您也可以將其命名為您想要的名字。

4、儲存檔案的位置應該與搜尋路徑相同。通過右鍵單擊視窗中的檔案和彈出的下拉框,可以輕鬆完成此操作。

5、最後在命令列視窗中輸入zitu。可以看出,在同一**中出現了四個子圖,每張**的顏色和線型不同。這是在plot命令中實現的。

7樓:匿名使用者

如果你想將多條曲線

copy畫在一個圖中,可在畫完一個後使用 hold on 命令(hold off是關閉);若想在一個figure中分為幾個小圖來分別繪製,就是用sunplot函式進行繪製,格式subplot(m,n,x)。

8樓:琳子磷脂

在兩個圖的**中間加一行hold onjiu ke yi

matlab中如何將兩條曲線畫在同一幅圖中

9樓:蔗糖澱粉葡萄糖

1、首先開啟matlab,隨機產生三組範圍不同的資料,資料量都為500,他們的邊界分別為[10,15],[23,38],,[38,58]。方法如下:x1=10+5*rand(500,1);x2=23+15*rand(500,1);x3=38+20*rand(500,1);

2、下面再分別畫出x1,x2,x3對應的曲線,用matlab的內建函式plot進行操作,分別用三個plot進行繪圖,結果如下:plot(x1,'r');plot(x2,'b');plot(x3,'g');

3、可以看到,圖中只有一條曲線,並沒有其他兩條曲線。這是因為後面plot的語句畫的圖會將前面plot畫的圖覆蓋掉,因此需要用一個語句來保留前面所繪製的圖,在需要保留的圖的後面加一句hold on,即可將該圖保留,使它不所覆蓋,將三條曲線畫在一張圖上,為了區別,要分別給這三條曲線定義不同的顏色。

4、為了圖的美觀,可以用grid on新增網格線,還需要新增橫縱座標軸標題。方法如下:xlabel('樣本序列');ylabel('值');

5、除此之外,因為畫的是多條曲線,因此還需要新增圖例,語法如下:legend('變數1','變數2','變數3'),括號裡面按照畫圖的順序分別寫每條曲線代表的意義即可

10樓:

畫完第一個,加上一句hold on,再畫第二個

如何在matlab中將兩個圖疊加到一起?

11樓:匿名使用者

用hold on語句。例如在同一座標系畫出y1=sin(x)和y2=sin^2(x)。如圖,輸入**。也就是只要在畫完一個函式後,用hold on,然後再畫第二個函式。

1、先定義函式:例如

z1=sin(x)sin(y)

z2=x+x.^3-y.^2+1

z3=sin(sqrt(xx.^2+yy.^2))./sqrt(xx.^2+yy.^2)

**如下:

2、在一個視窗中不同座標系畫多個圖形用語句:subplot(n,m,s)n:影象行數,m:

圖形列數,s:第幾個圖形。如subplot(2,3,1),表示畫兩行兩列(即4個圖形)中的第一個圖形。

輸入**:subplot(2,2,1),mesh(z1)得到如下圖形。

3、輸入**:subplot(2,2,2),mesh(z2)畫第二個圖形。

4、同理,輸入**:

subplot(2,2,3),wate***ll(z2)

subplot(2,2,4),meshc(z3)

畫第三、四個圖形。

12樓:匿名使用者

1.用hold on;hold off

例子ezplot('sin')

hold on

ezplot('cos')

ezplot('tan')

ezplot('cot')

hold off

2.用subplot

例子subplot(2,2,1)

ezplot('sin')

subplot(2,2,2)

ezplot('tan')

subplot(2,2,3)

ezplot('cos')

subplot(2,2,4)

ezplot('cot')

如何在matlab裡面將兩個圖結合在一起? 20

13樓:年輕哈咯

figure;

x=0:0.001:10;//這個就不解釋了吧plot(sin(x)); //繪製第一個正弦曲線hold on;//保值在畫面上

plot(cos(x), 'r');//繼續繪製第二個餘弦曲線,顏色為紅色

如此,兩個圖就在一個座標系下了;

引數我沒理解你的意思?你可以追問我。

14樓:匿名使用者

1)一組資料為x,y1;另一組為x,y2;

你可以plot(x,y1,x,y2);

2)另外,如果需要雙座標圖,

可以使用plotyy(x,y1,x,y2);

3)需要多子圖,

可以使用subplot(2,1,1);plot(x,y1);

subplot(2,1,2);plot(x,y2);

至於圖形後處理,可以在繪出的圖表裡使用系統提供的工具進行,改個字型,換個顏色,加個標註什麼都很容易,圖形化方式。

15樓:忍_愛

兩個**之間加個hold on就行

16樓:小寄生蟲兒

前面的圖畫完後hold on,然後再畫後面的就可以了

matlab兩個向量大小,MATLAB 中怎樣比較兩個向量的大小?

用一抄個cell儲存a,eg.a cell 2,它這樣就是一bai列,一列的資料,每一列有2行如下 du 1 第一行儲存a向量zhi每一個元素,dao 這裡儲存的是第一位 1 第二行儲存 1 在a中 從小到大排序 從大到小排序 第幾位 同理,讓另一個cell儲存b,第一行儲存b向量每一個元素,這裡儲...

怎樣在EXCEL中圖畫兩條曲線,怎樣在EXCEL中一個圖畫兩條曲線

方法步驟如下 1 首先開啟計算機,在計算機內開啟excel,在介面內找到 專插入 選項並單擊屬開啟,並單擊檔案中的所有資料。2 然後在介面內找到如下圖的箭頭所指的圖示選項並單擊。3 然後就可以成功的在excel中一個圖畫兩條曲線了。是說圖表嗎?圖表型別中有折線圖,不就是二條嗎?excel 怎麼在一個...

在SQL查詢語句中,怎樣實現兩個兩個條件?(兩個條件之間沒聯絡)

update biao set chengji chengji case when chengji 80 then chengji 0.05 else chengji 0.04 end 沒有什bai麼先後順序 du,是同時進zhi 行的,小於 dao80的增加4 而大回於80的,不會再答加5 upd...