Scilab 的繪圖函數(1),scilab繪圖函數

來源:互聯網
上載者:User

Scilab 的繪圖函數(1),scilab繪圖函數
Scilab 的繪圖函數plot 函數

最基本的是 plot 函數,與 matlab 中的plot 函數類似。

xdata = linspace(1,10,50);ydata = sin(xdata);plot(xdata, ydata);

對函數繪圖,不需要事先計算出 ydata,比如下面的例子畫出的結果是相同的。

plot (xdata, sin);

這樣還能節省些記憶體佔用。

如果只設定總的標題,可以這樣操作:

title("My Plot");

如果還要設定XY座標軸的標題,那麼可以這樣:

xtitle("This is a Plot", "x axis", "y axis");


顏色和線型可以通過給plot 添加第三個參數來控制。Legend() 函數可以設定標籤。比如下面的例子:

plot(xdata, sin, "o-r");plot(xdata, cos, "*--y");legend("sin", "cos");

儲存圖片

一幅圖繪製完成之後當然希望能夠儲存到檔案中,scilab 支援相當多的圖片格式,下面這些函數每個對應一種圖片格式。

 

xs2png

xs2fig

xs2pdf

xs2gif

xs2svg

xs2jpg

xs2ps

xs2bmp

xs2emf

xs2ppm

 

如果我們希望將 0 號視窗的圖形儲存為png 格式,那麼可以執行下面的語句。

xs2png(0, "pic.png");

上面提到了視窗號,在繪圖視窗上寫著這個數字。Scilab 同時可以顯示多個映像視窗,通過視窗號來區分現在操作的是哪個繪圖視窗。

很多時候我們希望能夠在映像上添加網格,這個操作在MATLAB很容易實現:

Grid on 開啟網格

Grid off 關閉網格

 

Scilab 中沒有這樣的語句,但是可以用如下的語句來代替。

 開啟網格:

set(gca(),"grid",[1 1]);

關閉網格:

set(gca(),"auto_clear",[-1 -1]);
下面是開啟網格之後的效果:

設定座標軸上刻度的字的大小:

xset("font size", 4);

很悲催,這樣設定對標題的字型大小無效。。。還沒有解決辦法。

 設定圖片的背景色:

xset("background", color);

其中 color 為一個整數,表示的是colormap 中的索引。可以用 getcolor() 函數獲得當前的colormap。

getcolor();

將背景色設定為綠色

xset("background", 3); 



(未完待續)



scilab是什?

Scilab(Scientific Laboratory)是以法國國立資訊與自動化研究院(INRIA)的科學家為主共同開發的“開放源碼”式科學計算軟體,它主要有兩個功能:數值計算和計算結果可視化。SCILAB資料類型豐富,可以很方便地實現各種矩陣運算。SCILAB也能處理比數字矩陣複雜得多的對象,例如控制專業的多項式傳遞函數矩陣。SCILAB允許使用者線上建立自訂函數。函數在SCILAB中被當作資料對象處理。另外SCILAB具有功能豐富的圖形顯示能力,可以完成各種常規形式的計算結果的可視化功能。
SCILAB 為使用者提供如下計算和開放式編程環境:
1、多種容易操作的資料類型。
2、一個作為廣泛計算基礎的合理有效基本
函數集。
3、一個開放式編程環境,新的函數能很容易
地被添加。
Intersci是一個有用的發布工具,通過它能建立介面,添加新的函數及工具箱,例如增加新的FORTRAN代碼和C代碼到SCILAB中。
SCILAB還包括一些應用於不同科學計算領域的工具箱, 例如應用於數學建模、 訊號處理、網路分析、決策最佳化、線形與非線性控 制等多個方面的工具箱。它的工具箱允許圖形定義和類比複雜的 連續和離散的混雜系統。SCILAB由3個獨立的部分組成:一個解譯器、函數庫(SCILAB程式)以及一個FORTRAN和C程式庫。另外 SCILAB是一種解釋性語言,能運行於Windows 、Linux以及UNIX等作業系統環境下。
SCILAB與目前流行的MATLAB軟體起源相同,都源自於Cleve Moler於1980年開發的程式,其功能與MATLAB 軟體相似,並且運算式的文法、函數的調用和大多數控制指令都相似。

下載Scilab Stable 2.4.1 www.mydown.com/soft/16/16424.html

教程 www.blog.edu.cn/....shtml
 
matlab中符號繪圖函數繪製 在[-1,1]上的曲線

%(1)求方程分別對x,t,a,b的一階微分;
clc;clear;clf;
f='cos(a*x)*sin(b*x)+t'
dfx=diff(f,'x')
dft=diff(f,'t')
dfa=diff(f,'a')
dfb=diff(f,'b')

%(2)以符號繪圖函數繪製 在[-1,1]上的曲線。【是不是這樣的啊?】
x=-1:0.1:1;
for a=1:2
for b=1:2
for t=1:2:5
ff=cos(a.*x).*sin(b.*x)+t;
plot(x,ff,'o-')
hold on
end
end
end

運行結果:
f =cos(a*x)*sin(b*x)+t
dfx =-sin(a*x)*a*sin(b*x)+cos(a*x)*cos(b*x)*b
dft =1
dfa =-sin(a*x)*x*sin(b*x)
dfb =cos(a*x)*cos(b*x)*x
 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.