Các chỉ định kiểu con không chuẩn sau đây được cung cấp cho các ký tự chuyển kiểu o, u, x, và X t - Kiểu cơ bản của C là thực chứ không phải là nguyên không dấu b - Kiểu cơ bản của C l
Trang 1INT2STR
INT2STR Chuyển số nguyên sang chuỗi
S = INT2STR(N) chuyển số nguyên vô hướng N sang chuỗi
STR2NUM
STR2NUM chuyển chuỗi sang số
X = STR2NUM(S) chuyển chuỗi S, nên là bểu hiện ký tự ASCII của một giá trị số, sang số của MATLAB Chuỗi có thể chứa các chữ số, dấu chấm thập phân, một dấu dẫn đầu là + hoặc -, một chữ 'e' cho mũ của 10, và 'i' cho đơn vị phức
STR2NUM chuyển ma trận chuỗi sang ma trận số
Ví dụ
A = ['1 2' str2num(A) => [1 2;3 4]
'3 4']
Nếu chuỗi S không là biểu hiện của ma trận hoặc số thích hợp thì STR2NUM(S) trả về ma trận rỗng
HEX2NUM
HEX2NUM IEEE chuyển số dạng thập lục phân sang dạng số thực kép
HEX2NUM(S), với S là chuỗi 16 ký tự chứa số dạng hex thì trả về số thực kép chuẩn IEEE Nếu
ít hơn 16 ký tự thì được thêm vào bên phải với các số 0
Ví dụ HEX2NUM('400921fb54442d18') trả về Pi
HEX2NUM('bff') trả về -1
Các NaN, inf và các số hữu tỉ tính đúng
HEX2DEC
HEX2DEC Chuyển số dạng hex sang dạng thập phân
HEX2DEC(D) trả về số dạng hex D trong dạng thập phân
Ví dụ HEX2DEC('12B') và HEX2DEC('12b') cả hai trả về 299
DEC2HEX
DEC2HEX Chuyển số thập phân sang dạng hex
DEC2HEX(D) trả về số nguyên thập phân D ở dạng hex Ví dụ, DEC2HEX(2748) trả về 'ABC'
SPRINTF
SPRINTF Ghi dữ liệu có dạng thức vào một chuỗi [S,ERRMSG] = SPRINTF(FORMAT,A, ) định dạng dữ liệu trong ma trận A (và trong mọi đối số ma trận thêm nữa), dưới điều khiển chỉ định trong chuỗi định dạng FORMAT, và trả về nó trong biến chuỗi S của MATLAB ERRMSG là đối số tùy chọn để trả về một chuỗi thông báo lỗi nếu có và một ma trận rỗng nếu không lỗi
SPRINTF giống như FPRINTF ngoại trừ trả về dữ liệu trong biến chuỗi chứ không ghi vào tệp FORMAT là một chuỗi chứa các chỉ định chuyển kiểu của ngôn ngữ C Các chỉ định chuyển kiểu bao gồm ký tự %, cờ, trường độ rộng và số chữ
Trang 2số thập phân, chỉ định kiểu con, và các ký tự chuyển kiểu d, i, o, u, x, X, f, e, E, g, G, c, và
s Xem giáo trình C để có đầy đủ chi tiết SPRINTF như trong ANSI C với một số các ngoại lệ và mở rộng,
Bao gồm:
1 Nếu MATLAB không chuyển được chính xác kép sang kiểu chỉ định thì dạng e được sử dụng Phải chuyển kiểu rõ ràng các giá trị không nguyên của MATLAB sang giá trị nguyên nếu muốn dùng chỉ định chuyển kiểu nguyên như d và lấy cách xử lý của ANSI C
2 Các chỉ định kiểu con không chuẩn sau đây được cung cấp cho các ký tự chuyển kiểu o, u, x, và X
t - Kiểu cơ bản của C là thực chứ không phải là nguyên không dấu
b - Kiểu cơ bản của C là thực kép chứ không phải là nguyên không dấu
Ví dụ, để in ra dạng hex một giá trị thực kép dùng một dạng như '%bx'
SPRINTF khác với hàm trùng tên trong C một điều quan trọng là - nó "vectơ hóa" với trường hợp
A là vô hướng Chuỗi định dạng được cuộn vòng qua các phần tử của A cho đến khi tất cả các phần tử được dùng hết Rồi nó cuộn vòng theo cách tương tự mà không bắt đầu lại qua mọi đối số ma trận tiếp theo
Ví dụ, lệnh
S = sprintf('rho is %5.3f',(1+sqrt(5))/2)
cho ra chuỗi
S = 'rho is 1.618'
SSCANF
Đọc chuỗi dưới điều khiển có dạng thức
[A,COUNT,ERRMSG,NEXTINDEX] = SSCANF(S,FORMAT,SIZE) đọc dữ liệu từ biến chuỗi MATLAB S, chuyển kiểu dựa vào chuỗi định dạng FORMAT, và trả về trong ma trận A COUNT là một đối số xuất tùy chọn để trả về số phần tử đọc thành công ERRMSG là một đối số xuất tùy chọn để trả về một chuỗi thông báo lỗi nếu có lỗi hoặc một ma trận rỗng nếu không lỗi NEXTINDEX là một đối số tùy chọn chỉ định một hoặc nhiều hơn số ký tự quét trong
S
SSCANF giống như FSCANF ngoại trừ đọc dữ liệu trong biến chuỗi MATLAB chứ không đọc từ tệp SIZE là tùy chọn; nó đặt một giới hạn vào số phần tử có thể quét từ chuỗi; nếu không chỉ định thì được xem là toàn bộ chuỗi; nếu có thì các giá trị hợp lý là:
N đọc nhiều nhất N phần tử vào một vectơ cột
inf đọc đến cuối chuỗi
[M,N] đọc nhiều M * N phần tử lấp đầy ít nhất một ma trận MxN, theo thứ tự cột N có thể là inf, nhưng M thì không Nếu ma trận A có kết
Trang 3quả chỉ từ cách dùng các chuyển kiểu và SIZE không có dạng [M,N] thì trả về một vectơ dòng FORMAT là một chuỗi chứa các chỉ định chuyển kiểu của ngôn ngữ C Các chỉ định chuyển kiểu bao gồm ký tự %, bỏ lựa chọn * và trường độ rộng, và các ký tự chuyển kiểu d, i, o, u, x, e,
f, g, s, c, và [ .] (tập quét) Toàn bộ ANSI C cung cấp các ký tự chuyển kiểu này để dùng trong MATLAB Xem giáo trình C để có đầy đủ chi tiết Nếu một ký tự chuyển kiểu được dùng thì việc đọc phần tử có thể dùng cho nhiều phần tử của ma trận MATLAB, mỗi phần tử lưu một ký tự
Việc hòa trộn các chỉ định chuyển ký tự và số làm cho ma trận kết quả là số và mọi lần đọc các phần tử biểu hiện bằng các giá trị ASCII của chúng, mỗi ký tự ứng với một phần tử của ma trận Quét cho đến hết chuỗi nếu NEXTINDEX lớn hơn kích thước của S SSCANF khác với hàm trùng tên trong C ở chỗ quan trọng là: nó "vectơ hóa " để trả về một đối số ma trận Chuỗi định dạng được cuộn vòng qua chuỗi cho đến hết hoặc số dữ liệu chỉ định bởi SIZE được chuyển hêt
Ví dụ, các lệnh
S = '2.7183 3.1416';
A = sscanf(S,'%f')
đọc một vectơ gồm 2 phần tử xấp xỉ e và pi
Đồ họa X-Y cơ bản
PLOT
Vẽ các vectơ hoặc ma trận
PLOT(X,Y) vẽ vectơ Y theo X nếu X hoặc Y là ma trận thì vectơ được vẽ theo các dòng hoặc cột của ma trận với hướng tăng theo chỉ số
PLOT(Y) vẽ các cột của Y theo chỉ số Nếu Y phức thì PLOT(Y) tương đương PLOT(real(Y),imag(Y)) Trong tất cả các cách dùng khác của PLOT thì phần ảo được bỏ qua Các kiểu đường và màu vẽ khác nhau có thể nhận được với lệnh PLOT(X,Y,S) với S là 1, 2 hoặc 3 chuỗi ký tự tạo nên từ các ký tự sau:
y vàng điểm
m tím o dấu
tròn
c xanh thiên thanh x dấu
x
r đỏ +
cộng
g xanh lục - đặc
b xanh dương * sao
w trắng :
chấm
Trang 4k đen - chấm
gạch
gạch
Ví dụ, plot (X,Y,'c+') vẽ dấu cộng màu thiên thanh ở mỗi điểm dữ liệu
PLOT(X1,Y1,S1,X2,Y2,S2,X3,Y3,S3, ) tổ hợp các hình vẽ xác định bởi bộ ba (X,Y,S), với X vàY là các vectơ hoặc ma trận và S là chuỗi Ví dụ, plot (X,Y,'y-',X,Y,'go') vẽ hai lần dữ liệu, với đường vàng cùng với vòng tròn xanh lục ở mỗi điểm Lệnh PLOT nếu không chỉ định màu thì được tự động dùng đặc tính ColorOrder của trục Ngầm định ColorOrder được liệt kê trong bảng trên đối với hệ màu mà có ngầm định một đường là màu vàng và nhiều đường thì cuộn vòng qua 6 màu đầu trông bảng Với hệ đơn sắc thì PLOT cuộn vòng qua đặc tính LineStyleOrder của trục PLOT trả về một vectơ cột các thẻ của các đối tượng LINE,mỗi thẻ một dòng Các cặp X,Y hoặc bộ ba X,Y,S có thể theo sau là các cặp tham số/giá trị để chỉ định các đặc tính thêm nữa của các đường
LOGLOG
Vẽ hình bằng cách chia trục loga
LOGLOG( ) giống PLOT( ), ngoại trừ dùng cách chia logarit cho cả hai trục XY
SEMILOGX
SEMILOGX vẽ hình bằng cách chia trục bán loga
SEMILOGX( ) giống PLOT( ), ngoại trừ chia trục logarit (cơ số 10) dùng cho trục X
SEMILOGY
SEMILOGY vẽ hình bằng cách chia trục bán loga
SEMILOGY( ) giống PLOT( ), ngoại trừ chia trục logarit (cơ số 10) dùng cho trục Y
FILL
Tô đa giác 2 chiều
FILL(X,Y,C) tô đa giác 2 chiều xác định bởi các vectơ X và Y với màu chỉ định bởi C Các đỉnh của
đa giác chỉ định bởi các cặp thành phần của X và Y Nếu cần, thì đóng đa giác bằng cách nối đỉnh cuối với đỉnh đầu Nếu C là một chuỗi ký tự đơn chọn từ danh sách 'r','g','b', 'c','m','y','w','k', hoặc một bộ ba vectơ dòng RGB, [r g b], thì đa giác được tô với hằng màu chỉ định Nếu C là một vectơ cùng độ dài như X và Y thì các phần tử của nó được chia trục bởi CAXIS và dùng như chỉ số trong COLORMAP hiện hành để chỉ định các màu ở các đỉnh; màu bên trong đa giác nhận được bằng nội suy song tuyến tính trong các màu đỉnh
Nếu X và Y là các ma trận cùng cỡ thì vẽ mỗi
đa giác úng với một cột Trong trường hợp này,
Trang 5C là vectơ dòng với các màu đa giác "bẹt", và C là một ma trận với các màu cho đa giác “n ội suy ” Nếu hoặc X hoặc Y là ma trận và thành phần khác là một vectơ cột cùng số dòng thì đối số vectơ cột được lặp để cho ra một ma trận có kích thước đòi hỏi
FILL(X1,Y1,C1,X2,Y2,C2, ) là một cách khác về chỉ định tô nhiều vùng
FILL đặt đối tượng PATCH là FaceColor có đặc tính 'nền', 'nội suy', hay màu chỉ định tùy thuộc vào giá trị cuat ma trận C FILL trả về một vectơ cột các thẻ chỉ đến các đối tượng PATCH, mỗi thẻ một mảnh Bộ ba X,Y,C có thể theo sau là các cặp tham số/giá trị để chỉ định các đặc tính thêm cho các mảnh FILL không đáp ứng cho đặc tính trục NextPlot
Các lệnh đồ thị X-Y đặc biệt
POLAR
Vẽ đồ thị trong hệ tọa độ cực
POLAR(THETA, RHO) tạo một đồ thị bằng cách dùng các tọa độ cực của góc THETA, đơn vị radian, bán kính RHO
POLAR(THETA,RHO,S) dùng chỉ định kiểu đường vẽ trong chuỗi S
Xem lệnh PLOT để biết các kiểu đường vẽ hợp lệ
BAR
Vẽ biểu đồ thanh đứng
BAR(Y) vẽ một biểu đồ của các phần tử của vectơ Y
BAR(X,Y) vẽ một biểu đồ của các phần tử của vectơ Y tại các vị trí chỉ định trong vectơ X Các giá trị của X phải theo thứ tự tăng dần Nếu các giá trị của X không chia đều thì việc chọn các khoảng không đối xứng qua mỗi điểm dữ liệu Thay vào đó, các thanh được vẽ ở giữa các giá trị X kề nhau Các đầu mút được chấp nhận đơn giản theo các khoảng trong cho các khoảng ngòai cần thiết
Nếu X và Y là hai ma trận cùng cỡ thì vẽ mỗi biểu đồ ứng với một cột
[XX,YY] = BAR(X,Y) không vẽ một biểu đồ mà lấy giá trị trả về của các vectơ X và Y để PLOT(XX,YY) là lệnh vẽ biểu đồ
Xem thêm STAIRS, HIST
BAR(X,'linetype') hoặc BAR(X,Y,'linetype') dùng kiểu đường vẽ chỉ định là linetype Xem PLOT để biết thêm chi tiết
STEM
Vẽ dãy dữ liệu rời rạc
STEM(Y) vẽ dãy dữ liệu Y như dây đứng theo trục
x kết thúc với vòng tròn nhỏ tại các giá trị
Trang 6STEM(X,Y) vẽ dãy dữ liệu Y tại các giá trị chỉ định trong X Có một đối số chuỗi tùy chọn cuối cùng là kiểu đường vẽ cho các dây Như STEM(X,Y,'-.') hoặc STEM(Y,':')
Trang 7
STAIRS
Biểu đồ bậc thang (biểu đồ không có các đường bên trong)
STAIRS(Y) vẽ biểu đồ bậc thang của các phần tử của vectơ Y
STAIRS(X,Y) vẽ biểu đồ bậc thang của các phần tử của vectơ Y tại các vị trí chỉ định bởi X Các gái trị của X phải theo thứ tự tăng dần và cách đều
[XX,YY] = STAIRS(X,Y) không vẽ một biểu đồ mà lấy giá trị trả về của các vectơ X và Y để PLOT(XX,YY) là lệnh vẽ biểu đồ
ERRORBAR
ERRORBAR vẽ đồ thị với các thanh sai số
ERRORBAR(X,Y,L,U,SYMBOL) vẽ biểu đồ của vectơ Y theo X với các thanh sai số chỉ định bởi các vectơ
L và U The vectors X,Y, L và U phải cùng độ dài Nếu X,Y, L và U là các ma trận thì mỗi cột cho ra một dòng riêng biệt Các thanh sai số được vẽ cách U(i) ở trên và L(i) ở dưới mỗi điểm trong (X,Y) để mỗi thanh có độ dài L(i) + U(i) SYMBOL là một chuỗi để điều khiển kiểu đường, các ký hiệu và màu cho hình vẽ X-Y
ERRORBAR(X,Y,L) vẽ Y theo X với một thanh sai số đối xứng Y có độ dài 2*L(i)
ERRORBAR(Y,L) vẽ Y với thanh sai số [Y-L Y+L]
Ví dụ,
x = 1:10;
y = sin(x);
e = std(y)*ones(size(x));
errorbar(x,y,e)
vẽ các thanh sai số đối xứng theo độ lệch chuẩn đơn vị
HIST
Vẽ biểu đồ
HIST(Y) vẽ một biểu đồ gồm 10 điểm cách đều giữa các giá trị nhỏ nhất và lớn nhất trong Y, trình bày sự phân bố của các phần tử trong vectơ
Y
HIST(Y,N), với N là một đại lượng vô hướng, dùng N điểm
HIST(Y,X), với X là vectơ, vẽ một biểu đồ dùng các điểm chi định trong X
[N,X] = HIST( ) không vẽ biểu đồ mà trả về các vectơ X và N để lệnh BAR(X,N) vẽ biểu đồ
ROSE
Vẽ biểu đồ hoa hồng hay biểu đồ góc
ROSE(THETA) vẽ biểu đồ góc cho các góc trong THETA Các góc trong vectơ THETA phải chỉ định theo đơn vị radian
ROSE(THETA,N) với N là đại lượng vô hướng, dùng
N điểm cách đếu từ 0 đến 2*PI Ngầm định N = 20
Trang 8ROSE(THETA,X) với X là vectơ, vẽ biểu đồ bằng chách dùng các điểm chỉ định trong X
[T,R] = ROSE( ) không vẽ mà trả về các vectơ T và R để POLAR(T,R) vẽ biểu đồ
COMPASS
COMPASS vẽ biểu đồ compa
COMPASS(Z) vẽ một biểu đồ compa để hiển thị góc và môđun của các phần tử phức của Z là các mũi tên xuất phát từ gốc
COMPASS(X,Y) tương đương COMPASS(X+i*Y) Nó hiển thị góc và môđun của các phần tử của 2 ma trận
X và Y
COMPASS(Z,'S') và COMPASS(X,Y,'S') dùng kiểu đường 'S' với 'S' là kiểu hợp lệ như trong lệnh PLOT
FEATHER
FEATHER vẽ biểu đồ lông chim
FEATHER(Z) vẽ đồ thị để hiển thị góc và môđun của các phần tử phức của Z là các mũi tên xuất phát từ các điểm cách đều dọc theo một trục đứng
FEATHER(X,Y) tương đương FEATHER(X+i*Y) Nó hiển thị hình vẽ lông chim cho các góc và môđun của các phần tử của 2 ma trận X và Y
FEATHER(Z,'S') và FEATHER(X,Y,'S') dùng kiểu đường 'S' với 'S' là kiểu hợp lệ như trong lệnh PLOT
FPLOT
Vẽ một hàm
FPLOT(FNAME,LIMS) vẽ hàm chỉ định bởi biến chuỗi FNAME giữa các giới hạn trên trục x chỉ định bởi LIMS = [XMIN XMAX] LIMS = [XMIN XMAX YMIN YMAX] cho các giới hạn tùy chọn trên trục y Hàm FNAME nên là hàm phù hợp với chuẩn cột của MATLAB Ví dụ, nếu FNAME là hàm biểu hiện bởi f = [f1(x) f2(x)], thì với giá trị nhập [x1 x2 x3]', hàm sẽ trả về ma trận
_f1(x1)_f2(x1)
f(x) =_f1(x2)_f2(x2)
_f1(x3)_f3(x3)
Mặt khác, FNAME có thể là chuỗi ước lượng với biến x, như 'sin(x)', 'diric(x,10)' hoặc '[sin(x),cos(x)]'
FPLOT nhận 2 tham số tuy chọn, MARKER và TOL MARKER là một chuỗi chỉ định kiểu đánh dấu dùng trong hình vẽ Ngầm định kiểu là '-' Thêm vào các kiểu vẽ chuẩn, FPLOT chấp nhận '-+', '-x', '-o', '-*' (hoặc '+-', 'x-', 'o-', và '*-') TOL là dung sai tương đối Ngầm định là 2e-3 Số lớn nhất của các bước trong x là (1/TOL)+1
[X,Y] = fplot(FNAME,LIMS, ) trả về các hoành độ tung độü dùng để vẽ FNAME trong vectơ cột X và trong các cột của ma trận Y
Ví dụ: