MATLAB【函数和图像】
目錄
一、常用的數(shù)學(xué)函數(shù)
1.函數(shù)表示的幾種寫法?
1.將函數(shù)變量定義為符號變量
2.使用function命令
3.使用匿名函數(shù)
?二、分段函數(shù)的表示
?三、使用函數(shù)繪制圖形
1.繪制絕對值的函數(shù)圖像
2.繪制取整函數(shù)的圖像
3.繪制分段函數(shù)?
?4.繪制正態(tài)分布曲線
5.繪制符號函數(shù)?
6.繪制正負(fù)數(shù)的立方根?
7.如何繪制含有無窮的圖
8.如何繪制隱函數(shù)?
如何設(shè)置ezplot的格式???????
9.使用meshgrid繪制多個(gè)函數(shù)
?10.求反函數(shù)
?11.求復(fù)合函數(shù)
1.使用compose求復(fù)合函數(shù)
2.使用subs求復(fù)合函數(shù)?
?12.含有調(diào)制曲線的圖像
?13.自動(dòng)求解方程
一、常用的數(shù)學(xué)函數(shù)
| 名??稱 | 含??義 | 名??稱 | 含??義 | 名??稱 | 含??義 |
| abs | 絕對值 | asin | 反正弦 | coth | 雙曲余切 |
| exp | 指數(shù) | acos | 反余弦 | asinh | 反雙曲正弦 |
| log | 對數(shù) | atan | 反正切 | acosh | 反雙曲余弦 |
| log10 | 10為底對數(shù) | acot | 反余切 | atanh | 反雙曲正切 |
| log2 | 2為底對數(shù) | sec | 正割 | acoth | 反雙曲余切 |
| pow2 | 2次冪 | csc | 余割 | sech | 雙曲正割 |
| sqrt | 平方根 | asec | 反正割 | csch | 雙曲余割 |
| sin | 正弦 | acsc | 反余割 | asech | 反雙曲正割 |
| cos | 余弦 | sinh | 雙曲正弦 | acsch | 反雙曲余割 |
| tan | 正切 | cosh | 雙曲余弦 | ||
| cot | 余切 | tanh | 雙曲正切 |
簡單舉例
?
1.函數(shù)表示的幾種寫法?
1.將函數(shù)變量定義為符號變量
syms x fx=sqrt(1+x^2);2.使用function命令
function f=myfun(x) f=(3-2.*x).^2.*x;3.使用匿名函數(shù)
fx=@(x) (x+10)?二、分段函數(shù)的表示
使用if-else判斷能夠幫助我們實(shí)現(xiàn)分段函數(shù)
function y= w(x)if x<0y=x+2;elsey=x-3;end end?三、使用函數(shù)繪制圖形
1.繪制絕對值的函數(shù)圖像
#清屏 clear #將我們的x設(shè)置為變量 syms x #使用匿名方法創(chuàng)建我們的y y=@(x) abs(x); #使用fplot,第一個(gè)參數(shù)為我們的方法,第二個(gè)參數(shù)為我們的自變量x的范圍 fplot(y,[-5,5]) #保持我們當(dāng)前的圖不被重置 hold on #設(shè)置我們的x軸標(biāo)簽 xlabel('x') #設(shè)置我們的y軸標(biāo)簽 ylabel('y') #設(shè)置我們的整張圖的標(biāo)簽 title('y|x|')?
2.繪制取整函數(shù)的圖像
clear syms x y=@(x) floor(x); fplot(y,[-5,5]) hold on xlabel('x') ylabel('y')3.繪制分段函數(shù)?
clear syms x y y1=@(x) 2*sqrt(x); #第三個(gè)參數(shù)為我們的繪制圖線的樣式 fplot(y1,[0,1], '-b') hold on y2=@(x) 1+x; fplot(y2,[1,5], '--og') #設(shè)置我們的圖例 legend('y=2*sqrt(x) ', 'y=1+x'); title('分段函數(shù)') xlabel('x') ylabel('y') #設(shè)置我們的坐標(biāo)軸的范圍,第一個(gè)參數(shù)和第二個(gè)參數(shù)表示x軸的范圍 #第三個(gè)參數(shù)和第四個(gè)參數(shù)表示y軸的范圍 axis([0,5,0,5])?4.繪制正態(tài)分布曲線
clear x=-2:0.01:2; y=(1/sqrt(2*pi))*exp(-x.^2/2); #plot函數(shù)將我們的x,y傳遞進(jìn)去就能夠繪圖 plot(x,y) title('正態(tài)分布曲線')5.繪制符號函數(shù)?
clear #設(shè)置我們x軸的最值 xm=5; #設(shè)置我們的x取遍從最小值到最大值,并且間隔為0.01 x=-xm:0.01:xm; #sign為我們符號函數(shù) y=sign(x); #將我們x==0時(shí)置空,就會形成斷點(diǎn) y(x==0)=nan; figure #畫圖,并且設(shè)置我們的線的寬度為2 plot(x,y,'LineWidth',2) hold on #繪制我們0,1處和0,-1處的兩個(gè)空心點(diǎn) plot(0,1,'o',0,-1,'o'); #在我們的原點(diǎn)處點(diǎn)上一個(gè)點(diǎn) plot(0,0,'.','MarkerSize',24) #給標(biāo)題命名 title('符號函數(shù)','FontSize',16) #設(shè)置我們的x軸標(biāo)簽和y軸標(biāo)簽 xlabel('\itx','FontSize',16) ylabel('\ity','FontSize',16) #繪制網(wǎng)格線 grid on axis([-xm,xm,-2,2])6.繪制正負(fù)數(shù)的立方根?
clear %設(shè)置x的max范圍 xm=5; %設(shè)置我們的x的范圍為從-xm到xm,間距為0.01 x=-xm:0.01:xm; %用對向量中每一個(gè)元素的乘法的方式讓y=x的三次方根 y=x.^(1/3); %繪圖 figure %創(chuàng)建兩行一列的圖標(biāo),并且將我們下面要畫的圖畫在第一張圖表 subplot(2,1,1) %使用plot方法,并且將我們的對應(yīng)的x,y值傳入,并且設(shè)置我們的畫的線的寬度為2 plot(x,y,'LineWidth',2) %繪制我們的網(wǎng)格線 grid on %給我們的圖表打上標(biāo)題 title('負(fù)數(shù)不正確的開立方','FontSize',16) %分別根我們的x,y軸打上標(biāo)題 xlabel('\itx','FontSize',16) ylabel('\ity','FontSize',16) %因?yàn)槲覀冊趫D1中發(fā)現(xiàn)我們的立方根的負(fù)數(shù)范圍不正確, %所以我們需要單獨(dú)將我們的符號取出來,然后乘以我們的原來函數(shù)的絕對值 y=sign(x).*abs(x).^(1/3); subplot(2,1,2) plot(x,y,'LineWidth',2) grid on title('負(fù)數(shù)正確的開立方','FontSize',16) xlabel('\itx','FontSize',16) ylabel('\ity','FontSize',16)7.如何繪制含有無窮的圖
?如果我們直接這樣繪制我們的tan(x)函數(shù)就會出現(xiàn)這樣的情況
clear; x=-5:0.01:5; y=tan(x); plot(x,y,'LineWidth',2)使用ezplot,將我們的公式傳入, 再傳入我們的范圍,就能夠把圖畫出來。
clear; syms x y=tan(x); y=inline(y); ezplot(y,[-2*pi,2*pi]);?
8.如何繪制隱函數(shù)?
ezplot還可以繪制隱函數(shù)圖像?
clear; syms x ezplot("x^2/4+y^2/6=1");使用axis([x軸下線,x軸上限,y軸下限,y軸上限])?可以指定我們坐標(biāo)軸的范圍
axis("equal")可以讓我們的坐標(biāo)軸的x,y軸等距
??
如何設(shè)置ezplot的格式
將我們的ezplot之后的結(jié)果傳遞給一個(gè)參數(shù),然后使用我們的set來設(shè)定我們的ezplot畫的圖的類型
clear; syms x h=ezplot("x^2/4+y^2/6=1"); set(h,'color','r','LineWidth',2);?
9.使用meshgrid繪制多個(gè)函數(shù)
使用meshgrid能夠讓我們的x,y中的數(shù)實(shí)現(xiàn)一一對應(yīng),采用meshgrid能夠讓我們同時(shí)繪制多條曲線
%對數(shù)函數(shù) clear %清除變量 xm=3; %最大自變量 x=0.1:0.1:xm; %自變量向量 a=[1/exp(1),0.5:0.5:2,exp(1),10]; %底數(shù)向量 [A,X]=meshgrid(a,x); %底數(shù)和自變量矩陣 Y=log(X)./log(A); %對數(shù)函數(shù)矩陣 figure %創(chuàng)建圖形窗口 plot(x,Y,'LineWidth',2) %畫函數(shù)曲線族 title('對數(shù)函數(shù)曲線族','FontSize',16) %加標(biāo)題 xlabel('\itx','FontSize',16) %加橫坐標(biāo) ylabel('\ity','FontSize',16) %加縱坐標(biāo) grid on %加網(wǎng)格 legend([repmat('\ita\rm=',length(a),1),num2str(a')],4)%復(fù)雜圖例 hold on %保持屬性 plot(x,-log(x),'*',x,log(x),'+',x,log10(x),'x')%補(bǔ)畫自然對數(shù)和常用對數(shù)曲線?10.求反函數(shù)
使用y=finverse(y)即可以讓y變成自身的反函數(shù)?
syms x y=x^2; z=finverse(y); z?11.求復(fù)合函數(shù)
1.使用compose求復(fù)合函數(shù)
g=compose(f,g)
syms x y=x^2; g=sin(x); z=compose(y,g);?
syms x z f=sin(x); g=x^2; compose(g,f) %返回復(fù)合函數(shù)g(f(y)) compose(g,f,x,z) %返回自變量是z?
2.使用subs求復(fù)合函數(shù)?
syms x z f=sin(x); g=x^2; subs(g,f) %返回復(fù)合函數(shù)f(g(y))?12.含有調(diào)制曲線的圖像
在一些周期性函數(shù)前面,我們可以乘上一些函數(shù)來繪制我們的調(diào)制曲線,讓我們的函數(shù)能夠被約束在兩條調(diào)制曲線中。在下面的代碼中我們使用了e^(-x)作為我們的調(diào)制曲線
clc clear syms x y=sin(pi*x)*exp(-x); x=-5:0.01:5; y=inline(y); plot(x,y(x),x,exp(-x),x,-exp(-x),'LineWidth',2);?
?13.自動(dòng)求解方程
syms x a b c %定義符號變量 x1=-2; y1=0; x2=0;y2=1; x3=1; y3=5; %3點(diǎn)的橫、縱坐標(biāo) y=a*x^2+b*x+c; %二次符號函數(shù) s1=subs(y,x,x1)-y1 %第1個(gè)代數(shù)方程 s2=subs(y,x,x2)-y2 %第2個(gè)代數(shù)方程 s3=subs(y,x,x3)-y3 %第3個(gè)代數(shù)方程 [a,b,c]=solve(s1,s2,s3)總結(jié)
以上是生活随笔為你收集整理的MATLAB【函数和图像】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机专业一级学报,【讨论】计算机类一级
- 下一篇: 看穿 137 亿光年,中国天眼会帮我们找