matlab中用ezplot函式繪製曲線時,怎樣設定符號例如圓圈的距離呢?詳細如下

時間 2021-05-02 11:23:21

1樓:匿名使用者

marker會出現在所有資料點上,不可能控制其間距。

要想不丟失資料而使得marker稀疏,一種變通的做法是,在原圖的基礎上另外繪製一條曲線,該曲線專門用於繪製marker,其資料由原曲線的資料提取。

下面的**演示了實現方法,但需要注意的是,目前只適合圖形中只有一條曲線的情況,如果有多條曲線,還需進行一些修改。

syms xgstar yarstar

d1=1.5; d2=1.6; k=4; phi=0.01;

acstar1 = (0.5*sqrt(pi)*k*phi)^(2/(1-d1))*xgstar^2;

acstar2 = (0.5*sqrt(pi)*k*phi)^(2/(1-d2))*xgstar^2;

h = ezplot(sqrt(xgstar/pi)*(yarstar/3)^0.75*log(yarstar/(3*acstar1))+ ...

k*phi*yarstar^0.75*(3*acstar1)^0.25-3e-4,[1e-9,1e-5,1e-5,5.0e-1]);

set(h,'linestyle','-','color','k');

x = get(h, 'x');

y = get(h, 'y');

dx = max(x) - min(x);

dy = max(y) - min(y);

e = 0.01;   % 距離係數,越小則越密集

clear x y

x(1) = x(1);

y(1) = y(1);

for i = 2 : length(x)

if sqrt( ((x(i)-x(end))/dx)^2 + ((y(i)-y(end))/dy)^2 ) >= e

x(end+1) = x(i);

y(end+1) = y(i);

endend

% 使用相同的顏色和線寬繪製marker

hold on

plot(x,y,'o','color',get(h,'color'),'linewidth',get(h,'linewidth'))

matlab中繪製曲線時,怎樣設定符號例如圓圈的距離呢

2樓:人在途中

找了好久發現,在這裡表述一下

以上圖為例,

選中要稀疏的曲線

比如下面的輸入部分,我輸入1:5:50;50表示我開始畫圖時的點數,5表示間隔的點數

確定後就是這種情況,標識點的密度得到降低。

3樓:匿名使用者

程式如下

x=0:0.01:2*pi;

y=sin(x);

plot(x,y)

hold on

for i=0:0.5:2*pi

y=sin(i);

plot(i,y,'marker','o')end執行結果

4樓:瘦成一導閃電呀

程式如下:

syms xgstar yarstar

d1=1.5; d2=1.6; k=4; phi=0.01;

acstar1 = (0.5*sqrt(pi)*k*phi)^(2/(1-d1))*xgstar^2;

acstar2 = (0.5*sqrt(pi)*k*phi)^(2/(1-d2))*xgstar^2;

h = ezplot(sqrt(xgstar/pi)*(yarstar/3)^0.75*log(yarstar/(3*acstar1))+ ...

k*phi*yarstar^0.75*(3*acstar1)^0.25-3e-4,[1e-9,1e-5,1e-5,5.0e-1]);

set(h,'linestyle','-','color','k');

x = get(h, 'x');

y = get(h, 'y');

dx = max(x) - min(x);

dy = max(y) - min(y);

e = 0.01;   % 距離係數,越小則越密集

clear x y

x(1) = x(1);

y(1) = y(1);

for i = 2 : length(x)

if sqrt( ((x(i)-x(end))/dx)^2 + ((y(i)-y(end))/dy)^2 ) >= e

x(end+1) = x(i);

y(end+1) = y(i);

endend

% 使用相同的顏色和線寬繪製marker

hold on

plot(x,y,'o','color',get(h,'color'),'linewidth',get(h,'linewidth'))

5樓:匿名使用者

這是比較麻煩的,我也找了許久,沒發現matlab有現成的命令。

我的做法是按原來的密集資料y畫一條線,然後提取出稀疏的資料y2在畫,此時畫時,只要畫標記就行。

plot(y,'k');

hold on;

plot(y2,'o');

y2是y的稀疏資料。

如何在matlab中運用ezplot顯示多個函式的影象?

6樓:匿名使用者

plot可以用乙個函式copy繪製多個影象,ezplot可以使用hold on 畫完乙個影象後用hold on 然後畫另乙個。sym x

ezplot('sin(x)')

hold on;

ezplot('cos(x)')

7樓:匿名使用者

hold on命令不行嗎?

matlab 中用函式ezplot作圖時顏色怎麼設定?

8樓:轉基因牛

ezplot在畫圖時無法指定

來顏自色,但是可以之後利用

設定語句進行設定

使用h = ezplot(sin(x)-y);獲取控制代碼然後用 set(h,'propertyname',propertyvalue,...) 這種方式實現對其的設定

顏色對應的屬性名稱為 color。

例如:h=ezplot('sin(x)')set(h,'color','k')

9樓:大海

plot指令可以在函式呼叫的時候就指定所畫圖形的格式,但是ezplot指令卻不可以

實現同樣的效果回,可以使用h = ezplot(sin(x)-y);

然後用 set(h,'propertyname',propertyvalue,...) 這種答方式實現

h=ezplot('sin(x)')

set(h,'color','k')

用ezplot函式在matlab中繪製圖形

10樓:涿鹿軒轅氏

貌似ezplot不支援呼叫變數,r(2),r(3)......這些東西導致了錯誤。

11樓:義朗紫新

ezplot('exp(x*y)-sin(x+y)=0',[-3,3])

matlab中關於ezplot畫圖問題

提示的意思是 函式計算有失敗的地方,計算速度不如用陣列快。我給你改一下就能看出 d2 0.008 a 0.002 k 10e5 t 293.15 ro 1.205 x 0.001 ki 1.4 a 0.0005 a2 0.00006 r 287.1 p1 1e6 f q,p2 0.9 3.14159...

matlab匿名函式,matlab 匿名函式組的問題

matlab是匿名函式。f x1,x2,x3 x1 x2 x3。cf func2str f for k 1 3。s x num2str k ss x num2str k cf strrep cf,s,ss end ff str2func cf 匿名函式 匿名函式它是matlab中定義的一種函式形式,...

急matlab中用cftool工具資料擬合之後擬合結果

無和有 r 2衡量的是迴歸方程整體的擬合度,是表達因變數與所有自變數之間的總體關係。r 2等於迴歸平方和在總平方和中所佔的比率,即迴歸方程所能解釋的因變數變異性的百分比。實際值與平均值的總誤差中,迴歸誤差與剩餘誤差是此消彼長的關係。因而回歸誤差從正面測定線性模型的擬合優度,剩餘誤差則從反面來判定線性...