Tải bản đầy đủ (.pdf) (39 trang)

lập trình tính số và vẽ đồ thị bằng mathematica

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (437 KB, 39 trang )

1

Mục lục

1 MỞ
1.1
1.2
1.3
1.4
1.5
1.6
1.7

ĐẦU
Lý do chọn đề tài: . . . . . .
Mục tiêu nghiên cứu: . . . .
Nhiệm vụ nghiên cứu: . . .
Đối tượng nghiên cứu: . . .
Phương pháp nghiên cứu: .
Giới hạn đề tài nghiên cứu:
Cấu trúc của khóa luận: . .

.
.
.
.
.
.
.

.


.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.


.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.

.
.
.
.
.
.

.
.
.
.
.
.
.

2 NỘI DUNG
2.1 Giới thiệu tổng quan về ngơn ngữ lập trình Mathematica. . .
2.1.1 Giới thiệu sơ bộ về ngơn ngữ lập trình Mathematica.
2.1.2 Giao diện tương tác của Mathematica. . . . . . . . .
2.1.3 Các tính năng của Mathematica. . . . . . . . . . . .
2.2 Vẽ đồ thị hai chiều tĩnh và động. . . . . . . . . . . . . . . .
2.2.1 Cú pháp. . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 Các tuỳ chọn của đồ thị hai chiều. . . . . . . . . . .
2.2.3 Đồ thị hai chiều nâng cao. . . . . . . . . . . . . . . .
2.2.4 Đồ thị dữ liệu hai chiều. . . . . . . . . . . . . . . . .
2.2.5 Đồ thị hai chiều động. . . . . . . . . . . . . . . . . .
2.3 Vẽ đồ thị ba chiều tĩnh và động. . . . . . . . . . . . . . . . .
2.3.1 Đồ thị mặt ba chiều. . . . . . . . . . . . . . . . . . .
2.3.2 Đồ thị tham số ba chiều . . . . . . . . . . . . . . . .
2.3.3 Đồ thị dữ liệu ba chiều. . . . . . . . . . . . . . . . .

2.3.4 Đồ thị ba chiều động. . . . . . . . . . . . . . . . . . .
2.4 Ứng dụng vẽ đồ thị vào giảng dạy và nghiên cứu vật lý. . . .
2.4.1 Bài tốn giao thoa sóng cơ học. . . . . . . . . . . . .
2.4.2 Bài toán chuyển động của vật ném xiên. . . . . . . .
2.4.3 Ứng dụng nghiên cứu vật lý. . . . . . . . . . . . . . .
3 KẾT LUẬN

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.


.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.

.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.

.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.


.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

2

2
2
3
3
3
3
3

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

4
4

4
4
5
9
9
10
18
20
22
22
22
25
27
27
28
28
29
30
38


2

Phần 1

MỞ ĐẦU
1.1

Lý do chọn đề tài:


Thế kỷ XX với nhiều thành tựu rực rỡ, Vật lý học đã có một bước phát triển mạnh
mẽ. Mở đầu là sự ra đời của thuyết tương đối của Einstein, thuyết lượng tử của Planck, lý
thuyết trường lượng tử... Để nghiên cứu, khảo sát các quá trình vật lý, xử lý các bài tốn
vật lý địi hỏi phải tính tốn các phép tốn rất phức tạp, tốn nhiều thời gian và cơng sức.
Vì vậy, việc đưa máy tính vào để nghiên cứu các q trình tính tốn trong vật lý, sử dụng
các cơng cụ tính tốn sẽ giúp cho việc xử lý các bài tốn vật lý được nhanh chóng và thuận
tiện.
Để làm điều này, ngơn ngữ lập trình giải tích Mathematica nổi lên với ưu điểm vượt
trội về giao diện thân thiện, về khả năng đồ thị siêu việt và khả năng xử lý số liệu nhanh
đã trở thành một công cụ đắc lực cho các nhà khoa học, các kỹ sư, các chuyên gia sinh học,
giáo viên, các nhà tài chính....
Với sự phát triển nhanh phiên bản Mathematica 5.0 đã bổ sung cho người sử dụng
những thao tác đơn giản, không phải lập trình nặng nề như trước. Trong đó Mathematica
cho phép vẽ tất cả các dạng đồ thị có thể có của một hàm số với cấu trúc lệnh đơn giản
nhất như đồ thị hai chiều, đồ thị ba chiều, đồ thị đường viền, đồ thị thống kê...
Đối với giáo viên phổ thông trung học, sử dụng phần mềm Mathematica để vẽ đồ thị
sẽ là một hỗ trợ đắc lực cho giáo viên trong việc soạn giáo án lên lớp, bài giảng điện tử, ra
đề thi trắc nghiệm... Nên tìm hiểu vẽ đồ thị bằng Mathematica là điều rất cần thiết. Vì lý
do trên tơi chọn đề tài "Sử dụng phần mềm Mathematica để vẽ đồ thị" làm đề tài
khoá luận tốt nghiệp.

1.2

Mục tiêu nghiên cứu:

Nghiên cứu khai thác và sử dụng phần mềm Mathematica vào việc vẽ đồ thị hai chiều
và ba chiều tĩnh, động và ứng dụng.


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị


1.3

Nhiệm vụ nghiên cứu:
-

1.4

Phạm Thị HạnhThảo 3

Tập trung tư liệu, nghiên cứu lý thuyết.
Nghiên cứu sử dụng cú pháp cấu trúc câu lệnh của Mathematica.
Khai thác các tính năng vẽ đồ thị hai, ba chiều trên Mathematica.
Ứng dụng: vẽ đồ thị một số bài toán vật lý, khảo sát một số q trình vật lý.

Đối tượng nghiên cứu:
Ngơn ngữ lập trình Mathematica với tính năng vẽ đồ thị.

1.5

Phương pháp nghiên cứu:

- Phương pháp nghiên cứu lý thuyết: Đọc và tìm hiểu ngơn ngữ lập trình Mathematica.
Nghiên cứu các bước lập trình trên Mathematica với tính năng vẽ đồ thị.
- Thực hiện các chương trình vẽ cơ bản của Mathematica với các đồ thị mô tả các quy
luật vật lý cụ thể.

1.6

Giới hạn đề tài nghiên cứu:


Trong thời gian và khả năng cho phép tơi chỉ nghiên cứu ngơn ngữ lập trình Mathematica với tính năng vẽ đồ thị hai chiều và ba chiều tĩnh, động và ứng dụng của chúng.

1.7

Cấu trúc của khóa luận:

Khố luận gồm có ba phần: phần mở đầu, phần nội dung và phần kết luận. Phần
mở đầu trình bày lý do chọn đề tài, mục tiêu nghiên cứu, nhiệm vụ nghiên cứu, đối tượng
nghiên cứu, phương pháp nghiên cứu và giới hạn nghiên cứu của đề tài. Phần nội dung (có
ba chương): Chương 1 giới thiệu tổng quan về ngơn ngữ lập trình Mathematica; Chương 2
thực hiện vẽ đồ thị hai chiều tĩnh và động với việc thay đổi các tuỳ chọn; Chương 3 thực
hiện vẽ đồ thị ba chiều tĩnh và động với việc thay đổi các tuỳ chọn; Chương 4 ứng dụng vẽ
đồ thị vào một số bài toán vật lý, khảo sát một số quá trình vật lý.
Phần kết luận: Trình bày các kết quả thu được từ việc nghiên cứu vẽ đồ thị trên
Mathematica.


4

Phần 2

NỘI DUNG
2.1
2.1.1

Giới thiệu tổng quan về ngôn ngữ lập trình Mathematica.
Giới thiệu sơ bộ về ngơn ngữ lập trình Mathematica.

Mathematica là ngơn ngữ tích hợp đầy đủ nhất các tính tốn kỹ thuật. Là dạng ngơn

ngữ dựa trên ngun lý xử lý các dữ liệu tượng trưng.
Thế hệ ngôn ngữ giải tích đầu tiên đó là Macsyma, Reduce... ra đời từ những năm 60
của thế kỷ XX. Các ngôn ngữ này chủ yếu dùng cho các bài toán vật lý năng lượng cao.
Nhược điểm của chúng là chủ yếu được định hướng chạy trên các máy tính lớn.
Thế hệ tiếp theo là các ngôn ngữ Maple, Mathlab, Mathematica... Các ngơn ngữ này
có ưu điểm là chạy nhanh hơn và chấp nhận bộ nhớ nhỏ hơn, chạy hoàn hảo trên máy tính
cá nhân. Trong các ngơn ngữ tính tốn loại này, nổi bật lên ngôn ngữ Mathematica với ưu
điểm vượt trội về giao diện thân thiện, về khả năng đồ thị siêu việt và xử lý dữ liệu không
thua kém các ngơn ngữ tính tốn khác.
Nhờ khả năng mơ hình hố và mơ phỏng các hệ lớn, kể cả các hệ động mà Mathematica
không chỉ được ứng dụng trong lĩnh vực vật lý, kỹ thuật và tốn mà cịn được mở rộng ứng
dụng trong các lĩnh vực như sinh học, các khoa học xã hội, kể cả trong lĩnh vực tài chính
phức tạp.
Phiên bản đầu tiên của Mathematica được phát hành vào năm 1988. Phiên bản 6.0 là
phiên bản mới nhất hiện nay.
2.1.2

Giao diện tương tác của Mathematica.

Mathematica đưa ra một giao diện rất thân thiện với người sử dụng được đặt tên là
bản ghi (notebook - thường được gọi tắt là nb). Các bản ghi là dạng cửa sổ biểu diễn một
lượt sử dụng Mathematica bao gồm đầy đủ các ghi chép cả về chương trình nguồn, cả về kết
quả thực hiện trên cùng một bản ghi và được ghi lại dưới dạng file riêng của Mathematica
có đi là *.nb.
Các bản ghi được tổ chức thành các ô (cells) một cách có trật tự và thứ bậc. Ta có thể
nhóm một nhóm ơ lại sao cho chỉ thấy ơ đầu của nhóm ơ đó (với số nhóm lồng tuỳ ý).


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị


Phạm Thị HạnhThảo 5

Mathematica còn đưa ra một giao diện phụ là các bảng lệnh (Palettes) và các nút lệnh
(Button). Người sử dụng chỉ cần nhấp chuột rất đơn giản và có thể tuỳ biến theo ý mình.
2.1.3

Các tính năng của Mathematica.

a. Khả năng tính tốn bằng số.
Mathematica cho phép tính một cách trực tiếp giống như dùng một calculator với độ
chính xác bất kỳ một biểu thức phức tạp nào bằng cách viết biểu thức cần tính và bấm tổ
hợp phím Shift + Enter.
Thí dụ ta có thể tính biểu thức sau đây một cách nhanh chóng:
6200
4268252238120274007969748915187737323429887453544894294954790789351129295496
19739019072139340757097296812815466676129830954465240517595242384015591919845376
100!
9332621544394415268169923885626670049071596826438162146859296389521759999322
9915608941463976156518286253697920827223758251185210916864000000000000000000000000
b. Khả năng tính toán với biến tượng trưng.
Mathematica cho phép giải các phương trình hay tính tốn các biểu thức mà nghiệm
hay các kết quả được biểu diễn bằng các biến tượng trưng.
Thí dụ tính tích phân bất định theo biến chữ x:
√ √
x a + xdx




3/2

a + x( a 4 x + x 2 ) − 1 a2log( x + a + x)
4
c. Khả năng đồ hoạ hai chiều và ba chiều.
Mathematica cho phép vẽ tất cả các dạng đồ thị có thể có của một hàm số với cấu trúc
lệnh đơn giản nhất như đồ thị hai chiều, đồ thị ba chiều, đồ thị đường viền, đồ thị mật độ...
Thí dụ lệnh sau đây cho phép vẽ đồ thị hai chiều của hàm số sin x+sin 2x trong khoảng
(0, 30) (hình 1.1):
P lot[Sin[x] + Sin[2x], {x, 0, 30}];

Hình 1.1
Lệnh sau đây cho phép ta vẽ đồ thị ba chiều của hàm Sin(xy):
P lot3D[Sin[xy], {x, 0, 4}, {y, 0, 4}, P lotP oints → 30]; (hình 1.2)


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 6

Mathematica không chỉ cho ta khả năng vẽ đồ thị hai chiều, ba chiều theo mặc định,
mà người dùng có thể sử dụng các tuỳ chọn để thay đổi trình diễn của đồ thị theo các mục
đích của mình.

Hình 1.2
Chẳng hạn như để khảo sát đồ thị của hàm số trong một khoảng nào đó ta có thể chỉ
cần vẽ đồ thị trong một khoảng tuỳ chọn do người sử dụng đưa ra. Hoặc có thể vẽ đồng thời
nhiều đồ thị trên cùng một hệ trục toạ độ, lựa chọn màu sắc, nét vẽ đậm nhạt... của từng
đồ thị khác nhau. Hình (1.3) sau đây là một ví dụ:
P lot[Sin[x2], {x, 0, 3}, AxesOrigin → {−0.2, 0},
AxesStyle → {RGBColor[1, 0, 0], AbsoluteT hickness[2]},
DefaultColor → RGBColor[0, 0, 1],

AxesLabel → {"Trục x", "Trục y"},
T icks → {{0, 1, 2, 3}, {−0.5, 0, 0.5, 1}}, GridLines → Automatic,
P lotRange → {−0.5, 1}, ImageSize → {400, 400 ∗ 0.62},
DefaultF ont → {V nT ime, 14}, F ormatT ype → T raditionalF orm,
P lotLabel → "Đồ thị y=Sin(x2)"];

Hình 1.3
d. Khả năng tính tốn của Mathematica.
Mathematica có khả năng chấp nhận các dữ liệu lớn bất kỳ và xử lý nó trong thời gian
vài giây.


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 7

Thí dụ tạo ra một ma trận 100 × 100 gồm các phần tử là các số nguyên bất kỳ (dấu
";" ở sau câu lệnh để không in ra ma trận m vì kích thước của nó q lớn).
m = T able[Random[], {100}, {100}];
Sức mạnh tính tốn của Mathematica là ở chỗ nó cho các giá trị riêng của ma trận m
này và biểu thị trên đồ thị với thời gian chưa tới 1 giây (hình1.4).
ListP lot[Abs[Eigenvalues[m]]];

Hình 1.4
Mathematica cho phép xử lý các số liệu có kích thước lớn bất kỳ.
Thí dụ Mathematica cho kết quả chính xác sau khơng đầy 1 giây cho phép tính giai
thừa của 100:
100!
933262154439441526816992388562667004907159682643816214685929638952175999932
29915608941463976156518286253697920827223758251185210916864000000000000000000000

000
Mathematica cịn cho phép tính tốn các phép tính đại số với độ chính xác bất kỳ do
người sử dụng đặt ra hay có thể thực hiện các tính tốn đại số mà con người khó có thể
thực hiện được bằng tay.
Thí dụ phép tính số Pi với độ chính xác đến 200 chữ số:
N [Π, 200]
3.1415926535897932384626433832795028841971693993751058209749445923078164062
86208998628034825342117067982148086513282306647093844609550582231725359408128481
1174502841027019385211055596446229489549303820
Khai triển biểu thức toán học x99 + y 99:
F actor[x99 + y 99]
{(x + y)(x2 − xy + y 2)(x6 − x3y 3 + y 6)(x10 − x9y + x8 y 2 − x7y 3 + x6y 4 − x5 y 5 + x4y 6 −
x3y 7 + x2y 8 − xy 9 + y 10)(x20 + x19y − x17y 3 − x16y 4 + x14y 6 + x13y 7 − x11y 9 − x10y 10 − x9y 11 +
x7y 13 + x6y 14 − x4 y 16 − x3y 17 + xy 19 + y 20)(x60 + x57y 3 − x51y 9 − x48y 12 + x42y 18 + x39y 21 −
x33y 27 − x30y 30 − x27y 33 + x21y 39 + x18y 42 − x12y 48 − x9y 51 + x3 y 57 + y 60)}
Đồng thời Mathematica cho phép sử dụng các thuật toán cho trước để đơn giản hoá
biểu thức (dấu "%" là để chỉ tham chiếu đến kết quả vừa đưa ra ở dòng lệnh trước).


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 8

Simplify[%]
x99 + y 99
e. Các thuật toán trong Mathematica.
- Khi chạy, Mathematica tự chọn các thuật tốn thích hợp (trong các thuật tốn sẵn
có) cho mỗi tính tốn gần đúng bằng số.
Thí dụ như lệnh FindRoot (tìm nghiệm phương trình), NIntegrate (tính tích phân
bằng số), NSolve (giải phương trình bằng số):

F indRoot[Cos[x] == x + log[x], {x, 1}]
{x → 0.840619}
NIntegrate[Log[x + Sin[x]], {x, 0, 2}]
0.555889
NSolve[x5 − 6x3 + 8x + 1 == 0, x]
{{x → −2.05411}, {x → −1.2915}, {x → −0.126515}, {x → 1.55053}, {x → 1.9216}}

Hình 1.5
- Mathematica là một công cụ dễ dàng để xử lý các ma trận. Có thể tạo ra một bảng
hai chiều, biểu diễn nó dưới dạng ma trận, thực hiện các phép tốn với nó.
- Mathematica có thể dễ dàng giải các phương trình vi phân bằng cả lời giải đại số
chính xác và cả lời giải gần đúng cho kết quả là một hàm nội suy, đồng thời biểu diễn đồ thị
các lời giải.
NDSolve[{x”[t] + x3[t] == Sin[t], x[0] == x [0] == 0}, x, {t, 0, 50}]
{{x → InterpolatingF unction[{{0., 50.}}, <>]}}
Lời giải bằng hàm nội suy này được biểu diễn bằng đồ thị (hình 1.5) (ở đây ký tự "/."
biểu thị cho phép thay x bằng nghiệm ở câu lệnh trước (%)).
P arametricP lot[Evaluate[{x[t], x [t]}/.%], {t, 0, 50}];
f. Mathematica là một cuốn bách khoa toàn thư về tốn.
- Mathematica có chứa sẵn hầu hết các hàm đặc biệt ở các dạng thuần tuý toán hoặc
ở các dạng ứng dụng của nó.
Thí dụ hàm Legendre:
LegendreQ[3, x]
2
2
− 5x − 1 x(3 − 5x2 )Log[ (1+x) ]
3
2
4
(1−x)



Phạm Thị HạnhThảo 9

KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

- Mathematica cho phép tính tốn một cách chính xác một số lượng lớn các tích phân
kể cả tích phân đặc biệt.

xArctan[x]dx

√ √

√ √


3
1
(−8 x−2 2ArcT an[1− 2 x]+2 2ArcT an[1+ 2 x]+4x 2 ArcT an[x]− 2Log[−1+
√ √6

√ √
2 x − x] + 2Log[1 + 2 x + x])
- Mathematica cũng cho phép tính tốn chính xác các tổng và tích vơ hạn.
n

k=1

1
6


HarmonicNumber[n, 6]
g. Các hiện ứng hình ảnh trong Mathematica.
Mathematica có thể tạo ra các đồ thị tham số hoặc cho thấy sự vận động của quá trình
bằng cách cho chạy một dãy các đồ thị tĩnh.
Thí dụ để vận động hoạt hoạ một dãy đồ thị (hình 1.6):
T able[P lot3D[Sin[2x]Sin[2y]Cos[t], {x, 0, Π}, {y, 0, Π}, P lotRange → {−1, 1},
BoxRatios → {1, 1, 1}, T icks → None, DisplayF unction → Indentity], {t, 0, Π, Π }];
6
Show[GraphicsArray[{%}, F rame → T rue]];

Hình 1.6

2.2
2.2.1

Vẽ đồ thị hai chiều tĩnh và động.
Cú pháp.

Lệnh Plot[f,{x, xmin, xmax}]; vẽ đồ thị hai chiều của hàm f(x) với x chạy từ xmin đến
xmax (hình 2.1).
Lệnh Plot[{f1, f2...}, {x, xmin, xmax}]; vẽ đồng thời đồ thị của các hàm {f1 , f2 ...} với
x chạy từ xmin đến xmax (dấu ";" được thêm vào ở cuối mỗi câu lệnh về đồ thị để không
hiện ra câu thông báo về đối tượng Graphics) (hình 2.2).


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 10


P lot[T an[x/2], {x, −2Π, 2Π}];

Hình 2.1
P lot[{Sin[x], Sin[2x], Sin[3x]}, {x, 0, 2Π}];

Hình 2.2
Theo cách này, ứng với mỗi trị số của x tính trực tiếp được trị số của hàm f (bằng các
thuật tốn tính bằng số của Mathematica), ta có tương ứng mỗi cặp điểm trên đồ thị.
Một trình tự khác là tính ra một hàm số (có thể chỉ là gần đúng) có biểu thức
giải tích theo các biến chữ (gọi là hàm hiện) rồi mới thay giá trị x vào để tính giá trị
cho f(x). Trình tự này thường được dùng cho các hàm nội suy, là các hàm khơng có biểu
thức dạng giải tích. Nó được thể hiện bằng các lệnh: P lot[Evaluate[f ], {x, xmin, xmax}] và
P lot[Evaluate[T able[{f1, f2 ...}]], {x, xmin, xmax }] (hình 2.3).
P lot[Evaluate[T able[BesselJ[n, x], {n, 4}]], {x, 0, 10}];

Hình 2.3
Một lệnh theo loại này nữa thường được dùng cho vẽ đồ thị nghiệm các phương trình
vi phân giải gần đúng (giải bằng số): P lot[y[x]/.nghiệm, {x, xmin, xmax }].
2.2.2

Các tuỳ chọn của đồ thị hai chiều.

a. Các tuỳ chọn mặc định của đồ thị hai chiều.


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 11

Một lệnh vẽ đồ thị của Mathematica có rất nhiều các tuỳ chọn bổ sung và ta có thể

thay thế giá trị mặc định. Để liệt kê các tuỳ chọn và các giá trị mặc định gán sẵn ta dùng
lệnh Options[Plot]. Dạng tổng quát của nó là: Options[đối tượng] cho danh sách các
tuỳ chọn và mặc định của đối tượng; hoặc Options[đối tượng,tuỳ chọn] cho danh sách
đặt của tuỳ chọn trong đối tượng.
Ngồi ra có thể dùng các lệnh: FullOptions[đối tượng,tuỳ chọn] cho mô tả tỷ mỷ
nhất cách sắp đặt tuỳ chọn; SetOptions[đối tượng,options → value] đặt lại giá trị mặc
định của lựa chọn options thành giá trị value (hình 2.4).
Option[P lot](*mơ tả danh sách các tuỳ chọn của lệnh Plot*)
1
{AspectRatio → GoldenRatio , Axes → Automatic, AxesLabel → None,
AxesOrigin → Automatic, AxesStyle → Automatic, Background → Automatic,
ColorOutput → Automatic, Compiled → T rue, DefaultColor → Automatic,
DefaultF ont :→ $DefaultF ont, DisplayF unction :→ $DisplayF unction,
Epilog → {}, F ormatT ype :→ $F ormatT ype, F rame → F alse,
F rameLabel → None, F rameStyle → Automatic, F rameT icks → Automatic,
GridLines → None, ImageSize → Automatic, MaxBend → 10.,
P lotDivision → 30., P lotLabel → None, P lotP oints → 25,
P lotRange → Automatic, P lotRegion → Automatic, P lotStyle → Automatic,
P rolog → {}, RotateLabel → T rue, T extStyle :→ $T extStyle, T icks → Automatic}
g = P lot[Sin[x], {x, 0, 2Π}];

Hình 2.4
Options[g, P lotRange]
{P lotRange− > Automatic}
F ullOptions[g, P lotRange]
{{−0.15708, 6.44026}, {−1.05, 1.05}}
b. Các tuỳ chọn quan trọng.
Mathematica cho ta nhiều tuỳ chọn, dưới đây chúng tôi xin giới thiệu một số tuỳ chọn
quan trọng và cách đặt các tuỳ chọn của các lệnh vẽ đồ thị hai chiều.
- Axes: là một tuỳ chọn của hàm vẽ đồ thị bao gồm có hay khơng các trục toạ độ.

Các giá trị của tuỳ chọn này bao gồm:


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 12

Axes →True: Hiển thị các trục toạ độ.
Axes →False: Không hiển thị các trục toạ độ.
Axes → {False, True}: Hiển thị một trục toạ độ, trục còn lại không hiển thị.
Giá trị mặc định của tuỳ chọn là Automatic (Xem hình 2.5).
Show[Graphics[Circle[{0, 0}, 1], AspectRatio → Automatic, Axes → Automatic]];

Hình 2.5
- AxesLabel: Tuỳ chọn đặt nhãn cho các trục toạ độ.
Các giá trị của tuỳ chọn này bao gồm:
AxesLabel → None: Không đặt nhãn cho đồ thị.
AxesLabel → label: Đặt nhãn label cho trục y đối tượng đồ thị hai chiều.
AxesLabel → {"nhãn x","nhãn y"}: Đặt nhãn cho các trục toạ độ.
Nhãn của các trục toạ độ sẽ được đánh ở cuối các trục. Giá trị mặc định của tuỳ chọn
là None (Xem hình 2.6).
P lot[Sin[x/2], {x, 0, 2Π}, AxesLabel → {”Trục x", "Trục y"}];

Hình 2.6
- AxesOrigin: Lựa chọn trong đồ thị hai chiều để đặt điểm cắt hai trục toạ độ.
Các giá trị của tuỳ chọn này bao gồm:
AxesOrigin → {x, y}: Đặt điểm cắt hai trục toạ độ là điểm có toạ độ {x,y}.
Giá trị mặc định của tuỳ chọn là điểm {0,0}.
Đối với đồ thị đường viền và đồ thị mật độ, đặt AxesOrigin → Automatic thì điểm cắt
của các trục toạ độ được đặt ở ngồi vùng đồ thị.

Thí dụ để khảo sát tính đối xứng của hàm Sin[x] ta có thể thay đổi điểm cắt hai trục
toạ độ để thấy rõ điều đó (hình 2.7):


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 13

P lot[Sin[x], {x, 0, 2Π}, AxesOrigin → {Π, 0}];

Hình 2.7
- Frame: Là tuỳ chọn của đồ thị hai chiều, gồm có hay khơng có khung viền quanh
đồ thị. Các giá trị của tuỳ chọn gồm:
Frame → True: Có hiển thị khung viền.
Frame → None: Không hiển thị khung viền.
Giá trị mặc định của tuỳ chọn là None.

Hình 2.8
Thí dụ trong lệnh vẽ đồ thị hàm Sin[x2], để đối chiếu các giá trị cực đại ta có thể sử
dụng khung viền để thấy rõ (hình 2.8):
P lot[Sin[x2], {x, 0, 3}, F rame → T rue];
- GridLines: Đây là tuỳ chọn của đồ thị hai chiều bao gồm có hay không vẽ các đường
lưới cho mỗi chỗ đánh dấu trên trục toạ độ của đồ thị. Các giá trị của tuỳ chọn bao gồm:

Hình 2.9


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 14


GridLines → None: Không hiển thị các đường lưới.
GridLines → Automatic: Hiểu thị các đường lưới theo mặc định.
Giá trị mặc định của tuỳ chọn này là None.
Thí dụ để khảo sát chi tiết các khoảng đồ thị của hàm số Sin[x2] ta vẽ thêm các đường
lưới (hình 2.9):
P lot[Sin[x2], {x, 0, 3}, GridLines → Automatic];
- FrameLabel: Đây là tuỳ chọn của đồ thị hai chiều bao gồm có hay khơng có nhãn
khung. Đặt các giá trị của tuỳ chọn:
FrameLabel → None: Khơng có nhãn khung.
FrameLabel → {nhãn 1,nhãn 2,nhãn 3,nhãn 4}: Có đặt nhãn và nhãn được đặt xung
quanh 4 cạnh theo chiều kim đồng hồ từ dưới.
Giá trị mặc định của tuỳ chọn là None (hình 2.10).
P lot[Sin[x], {x, 0, 2Π}, F rame → T rue, F rameLabel → {Dưới, Trái, Trên, Phải},
RotateLabel → F alse];

Hình 2.10
(Ở đây có bổ sung tuỳ chọn RotateLabel → F alse để không xoay nhãn theo chiều của
khung)
- PlotLabel: Đây là tuỳ chọn của lệnh vẽ đồ thị với việc đặt nhãn cho đồ thị. Đặt các
giá trị tuỳ chọn:

Hình 2.11


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 15

PlotLabel → None: Khơng có nhãn của đồ thị.

PlotLabel → StyleForm["nhãn",dạng text,FontFamily → "font",FontSize → n]: Đặt
nhãn cho đồ thị là nhãn với kiều dạng text, font chữ là font, cỡ chữ n.
P lot[(Sin2(Θ))/(2 + Cos2 (Θ)), {Θ, 0, Π}, P lotLabel → StyleF orm[ " (Sin2(Θ))/(2 +
Cos2 (Θ)) " , F ontSize → 12]]; (hình 2.11)
- Ticks: Tuỳ chọn đánh dấu các điểm trên các trục toạ độ. Các giá trị của tuỳ chọn:
Ticks → None: Không đánh dấu trên các trục.
Ticks → Automatic: Tự động đánh dấu trên các trục.
Ticks → {{xticks, ...},{yticks, ...}}: Tuỳ chọn đánh dấu trên các trục khác nhau (hình
2.12).
P lot[Sin[x], {x, 0, 2Π}, T icks → {{0, Π/2, Π, (3Π)/2, 2Π}, Automatic}];

Hình 2.12
- Plot Range: Tuỳ chọn của lệnh vẽ đồ thị cho khoảng toạ độ hiển thị. Các giá trị
của tuỳ chọn:
Plot Range → All: Hiển thị toàn bộ.
Plot Range → Automatic: Tự động hiển thị đồ thị.
Plot Range → {ymin , ymax }: Hiển thị đồ thị trong khoảng toạ độ từ ymin đến ymax .
Plot Range → {{xmin , xmax}, {ymin , ymax }}: Tuỳ chọn khoảng đồ thị hiển thị với x chạy
từ xmin đến xmax , y chạy từ ymin đến ymax .
Giá trị mặc định của tuỳ chọn là All.

Hình 2.13


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 16

Thí dụ khi khảo sát hàm số Sin(x2) trong một khoảng toạ độ x → {0,2}, y → {0,1.2}
(hình 2.13):

P lot[Sin[x2], {x, 0, 4}, P lotRange → {{0, 2}, {0, 1.2}}];
- PlotStyle: Tuỳ chọn kiểu vẽ của đồ thị bao gồm các hàm Graylevel[i] cho độ
xám i của đồ thị, 0 ≤ i ≤ 1, 0 _ đen hoàn toàn, 1_ trắng; Thickness[r] cho độ dày r
của đường đồ thị; Dashing[r1, r2 ...] cho độ dài của các đường vạch chấm kế tiếp nhau;
RGBColor[r1, g1 , b1 ] cho màu của đồ thị bằng hàm màu (ví dụ đỏ = RGBColor[1,0,0]);
Hue[h] hoặc Hue[h,s,b] cho độ hoe (sắc sáng).
Thí dụ khi ta vẽ đồng thời hai hoặc nhiều đồ thị trên một hệ trục toạ độ, khi đó thật
khó để nhận biết các đồ thị khác nhau. Ta có thể chọn màu hoặc độ dày của các đường đồ
thị khác nhau là khác nhau để dễ so sánh và nhận xét (hình 2.14).
P lot[{Sin[x], Sin[2x]}, {x, 0, 2Π}, P lotStyle → {T hickness[0.004], T hickness[0.007]}];

Hình 2.14
- Background: Tuỳ chọn cho màu của nền đồ thị.
Ta đặt giá trị tuỳ chọn bằng các hàm màu như RGBColor[r,g,b], GrayLevel[], hoặc
Hue[]. Giá trị mặc định của tuỳ chọn này là Automatic.
P lot[Sin[x], {x, 0, 2Π}, Background → GrayLevel[0.5]];

Hình 2.15
- PlotPoints: Tuỳ chọn cho số điểm tối thiểu để lấy mẫu cho đồ thị. Giá trị mặc định
của tuỳ chọn là 25 (hình 2.16a).
Thí dụ xét đồ thị sau:


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 17

P lot[Cos[20t] + Cos[24t], {t, Π, 3Π}];

Hình 2.16a

Trên đồ thị ta thấy, đoạn đầu tiên của đồ thị khơng được chính xác do số điểm lấy
mẫu để vẽ đồ thị khơng đủ. Ta có thể khắc phục điều này với tuỳ chọn PlotPoints là 70
(hình 2.16b).
P lot[Cos[20t] + Cos[24t], {t, Π, 3Π}, P lotP oints → 70];

Hình 2.16b
Trên đây là những tuỳ chọn quan trọng của các lệnh vẽ đồ thị hai chiều, ngồi ra cịn
có các tuỳ chọn khác như:
Aspecratio: Tuỳ chọn cho tỷ lệ chiều cao/chiều rộng. Giá trị mặc định của nó là

1/GoldenRatio_ 2/(1 + 5).
TextStyle: Kiểu mẫu cho text trong đồ thị gồm các dạng như: title, subtile, section,
text..., mặc định là text thường. Đặt kiểu text bằng lệnh: TextStyle → dạng text.
DisplayFunction: Tuỳ chọn về cách thể hiện đồ thị, Indentity là không hiển thị đồ
thị ra.
Prolog hoặc Epilog: Vẽ thêm vào đồ thị một đối tượng đồ thị đơn giản trước (hoặc
sau) đồ thị chính với mục đích đánh dấu hoặc so sánh. Đó có thể là Box[], Rectange[],
Circle[]... giá trị mặc định của nó là None...
Các tuỳ chọn của các lệnh vẽ đồ thị có rất nhiều nhưng giá trị của các tuỳ chọn này chỉ
giới hạn trong một số ít: Automatic_có sử dụng các thuật tốn đã tích hợp sẵn, None_không
bao gồm tuỳ chọn này, All_bao gồm tất cả các đặc tả, True_thực hiện mặc định đã đặt,
False_không thực hiện tuỳ chọn.


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

2.2.3

Phạm Thị HạnhThảo 18


Đồ thị hai chiều nâng cao.

Mathematica không chỉ hỗ trợ vẽ từng đồ thị của mỗi hàm số với những tuỳ chọn như
trên, mà nó cịn hỗ trợ thêm nhiều chức năng khác trong hiện ứng hình ảnh. Ta có thể vẽ
nhiều đồ thị cùng một lúc, bố trí lại để phục vụ cho các mục đích khác, hoặc cũng có thể
tìm nghiệm của một phương trình từ đồ thị mà nếu giải trực tiếp bằng thuật toán thì sẽ gặp
nhiều khó khăn.
a. Vẽ lại các đồ thị, vẽ chèn các đồ thị.
Ta có thể vẽ lại một hay nhiều đồ thị mà đã thực hiện trước đó mà chưa được hiển thị
ra hoặc bổ sung các tuỳ chọn.
Để vẽ lại các đồ thị ta dùng lệnh: Show[{g1 , g2 , ...} , tuỳ chọn] Ví dụ (hình 2.17):
P lot[Cos[20t] + Cos[24t], {t, Π, 3Π}, P lotP oints → 70, DisplayF unction → Identity];
Show[%, Background → GrayLevel[0.8]];

Hình 2.17
Tuỳ chọn DisplayFunction → Identity sẽ không hiển thị đồ thị ra màn hình.
p1 = P lot[xSin[x], {x, −10, 10}, P lotStyle → {T hickness[0.003]},
DisplayF unction → Identity];
p2 = P lot[xCos[x], {x, −10, 10}, P lotStyle → {T hickness[0.007]},
DisplayF unction → Identity];
Show[p1, p2, F rame → T rue, DisplayF unction → $DisplayF unction];

Hình 2.18


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 19

Ta cũng có thể vẽ các đồ thị thành một dãy bằng các lệnh:

Show[GraphicsArray[{g1 , g2 , ...}]]: hiển thị dãy đồ thị {g1 , g2 , ...} thành một hàng
liên tục.
Show[GraphicsArray[{{g1 }, {g2}, ...}]]: hiển thị dãy đồ thị {g1 , g2 , ...} thành một
cột.
Show[GraphicsArray[{{g1 , g2 }, ...}...}]]: hiển thị dãy đồ thị {{g1 , g2 , ...}...} thành
một bảng chữ nhật các đồ thị với tuỳ chọn GraphicsSpacing → {h,v} cho khoảng cách giữa
các đồ thị: h_ khoảng dọc, v_ khoảng ngang.
p1 = P lot[Sin[x], {x, 0, 2Π}, DisplayF unction → Identity];
p2 = P lot[Sin[2x], {x, 0, 2Π}, DisplayF unction → Identity];
Show[GraphicsArray[{p1, p2}]];

Hình 2.19
b. Đồ thị theo tham số.
Khi xét phương trình chuyển động của một chất điểm chuyển động trong không gian
r = r(t). Đây chính là phương trình quỹ đạo của chất điểm theo tham số t. Đồ thị của quỹ
đạo là một đồ thị theo tham số. Lệnh vẽ đồ thị theo tham số:
ParametricPlot[{fx, fy }, {t, tmin , tmax}] vẽ đồ thị cho bởi các toạ độ {fx (t), fy (t)}.
ParametricPlot[{{fx, fy }, {gx , gy }...}, {t, tmin, tmax }] vẽ đồng thời một vài đồ thị trên
hệ trục toạ độ.

Hình 2.20
Thí dụ tia điện tử trong máy dao động ký gồm hai cuộn lái tia theo hai phương


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 20

vng góc với nhau có điện trường thay đổi theo quy luật: x = Ax Cos(ωx t + ϕx ) và y =
Ay Cos(ωy t + ϕy ). Tổng hợp của hai dao động vng góc này cho ta một đường cong theo

tham số t gọi là các đường Lissajous. Dưới đây là đồ thị của dao động tổng hợp khi xét
trong một trường hợp cụ thể (hình 2.20):
P arametricP lot[{Cos[t], Cos[3t − Π ]}, {t, 0, 2Π}, AxesLabel → {”x(A)”, ”y(A)”},
4
F rame → T rue, AspectRatio → Automatic, F rameLabel → {”Ax = Ay ; ωx = ωy /3; ϕx =
0; ϕy = −Π/4]”, ””, ””, ””}, DefaultF ont → {”V nT ime”, 14}];
2.2.4

Đồ thị dữ liệu hai chiều.

Đồ thị dữ liệu biểu diễn các dữ liệu dạng bảng cho bởi Table[] hoặc Array[]..., hoặc
các cặp toạ độ được đưa vào trực tiếp từ thực nghiệm. Đồ thị dữ liệu gồm các lệnh:
ListPlot[{y1, y2, ...}] vẽ một dãy các giá trị y với x lần lượt là 0, 1, 2,... , n.
ListPlot[{{x1, y1}, {x2, y2 }, ...}] vẽ dãy các điểm toạ độ {xi , yi }.
Ngoài các tuỳ chọn cho các lệnh đồ thị, đồ thị dữ liệu cịn được bổ sung các tuỳ chọn:
PlotJoined: Có nối các điểm lại hay không, giá trị mặc định của tuỳ chọn là False.
PlotStyle: Cho cấu trúc của điểm dữ liệu hoặc đường nối các điểm được vẽ ra. Ví dụ
PointSize[i] cho điểm trịn có bán kính i.
Thí dụ ta vẽ đồ thị dữ liệu của bảng sau:
data = T able[Sin[x] + Random[Real, {−0.1, 0.1}], {x, 0, 2Π, 0.1}];
ListP lot[data, P lotStyle → P ointSize[0.012]]; (hình 2.21a)
ListP lot[data, P lotJoined → T rue]; (hình 2.21b)

Hình 2.21a

Hình 2.21b
Ta có thể tuỳ chọn cách hiển thị điểm dữ liệu trên đồ thị bằng lệnh Graphics[đồ hoạ,


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị


Phạm Thị HạnhThảo 21

tuỳ chọn]. Lệnh này hiển thị đối tượng đồ hoạ đơn giản với tuỳ chọn. Đối tượng này được
hiển thị trên đồ thị bằng lệnh Show[].
Một số đối tượng đồ hoạ đơn giản như: Circle[{x, y},r] đường tròn tâm {x, y},
bán kính r; Disk[{x, y}, r] đường trịn có tơ đen, tâm {x, y}, bán kính r; Line[{{x,
y}... }] đường thẳng với các thăng giáng (bù đắp): Offset[dx, dy]; Point[{x, y}] điểm;
Rectange[{xmin, ymin }, {xmax , ymax}] hình chữ nhật; Polygon[{{x1 , y1},... }] hình đa giác;
Text[expr,{x, y}] đoạn văn bản expr.
Thí dụ:
Show[Graphics[T able[Line[{{x, x2}, Of fset[{0, 6}, {x, x2}]}], {x, 10}], F rame → T rue]];
(hình 2.22a)

Hình 2.22a
Show[Graphics[T able[Circle[{x, x }, Of fset[{4, 4}]], {x, 10}], F rame → T rue]]; (hình
2.22b)
2

Hình 2.22b
Để biểu diễn các dữ liệu thực nghiệm với các tuỳ chọn phong phú, có một chương trình
dành riêng, một chương trình con: Graphics‘MultipleListPlot‘. Cấu trúc lệnh của nó như
sau (sau khi đã gọi package này ra để sử dụng):
MultipleListPlot[list1, list2,... , tuỳ chọn]; vẽ đồng thời đồ thị dữ liệu cho bởi các
dãy toạ độ list1, list2, ...
Với cấu trúc lệnh này có các tuỳ chọn:
PlotJoined: Có (hay khơng) đường liên kết các điểm dữ liệu. Mặc định là False.
PlotStyle: Định dạng (Style) cho đường liên kết bao gồm các hàm



KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

2.2.5

Phạm Thị HạnhThảo 22

Đồ thị hai chiều động.

Mathematica cho phép thực hiện các hiện ứng hoạt hoạ trên màn hình bằng cách cho
chạy một dãy các đối tượng đồ thị kế tiếp nhau.
Để có hiện ứng hoạt hoạ động ta phải thực hiện các thao tác sau:
- Trước hết ta phải có dữ liệu cho việc trình diễn "đoạn phim hoạt hoạ" bằng cách vẽ
một dãy liên tiếp các đối tượng đồ thị này trên màn hình.
- Khi đã có một dãy liên tiếp các đối tượng đồ thị ta chỉ cần click đúp chuột vào một
đối tượng là có thể thấy được hiện ứng hoạt hoạ.
Có thể tuỳ chọn cách trình diễn hoạt hoạ bằng cách sử dụng các tuỳ chọn thể hiện
ở thanh công cụ bên dưới bao gồm: Backward trình diễn ngược trình tự thời gian, Cyclic
trình diễn theo vịng lặp, Forward trình diễn theo trình tự thời gian, Pause dừng trình diễn,
Slower làm chậm quá trình diễn hoạt, Faster làm nhanh q trình diễn hoạt.
Xét thí dụ sau:
2
2
2
2
T able[P lot[{e[−16(x−1) ] + 1.5e[−(x+t) ] , 1.5e[−(x+t) ] + 3, e[−16(x−t) ] + 5, {x, −3, 3},
P lotStyle → {{T hickness[0.008]}, {T hickness[0.005]}, {T hickness[0.005]}},
P lotRange → {0, 6.25}, Axes → F alse, F rame → T rue, F rameT icks → None,
P lotP oints → 40], {t, −2, 3.5, 1}];

Hình 2.23


2.3
2.3.1

Vẽ đồ thị ba chiều tĩnh và động.
Đồ thị mặt ba chiều.

a. Cú pháp.
Đồ thị mặt ba chiều được vẽ bằng lệnh: Plot3D[f(x,y),{x, xmin, xmax}, {y, ymin , ymax}]
hoặc Plot3D[{f,s},{x, xmin, xmax }, {y, ymin, ymax }] vẽ đồ thị mặt f với độ bóng s thay đổi
theo chiều cao; Plot3D[{f,Hue[s]},{x, xmin, xmax}, {y, ymin , ymax}] vẽ đồ thị mặt có ánh
sắc thay đổi theo độ cao.
P lot3D[{Sin[xy], Hue[.3]}, {x, 0, 3}, {y, 0, 3}, AxesLabel− > {”x”, ”y”, ”z”},


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 23

P lotLabel → StyleF orm[”f = Sin(xy)”, Section, F ontF amily → V nT ime,
F ontSize → 14]];

Hình 3.1
b. Các tuỳ chọn của đồ thị mặt ba chiều.
Đồ thị mặt ba chiều cũng có những tuỳ chọn như trong đồ thị hai chiều như: AxesLabel: đặt nhãn cho các trục toạ độ, PlotPoints: số điểm tối thiểu lấy mẫu cho đồ thị,
Ticks: điểm đánh dấu trên đồ thị, ...
Ta có thể liệt kê các tuỳ chọn và các giá trị mặc định gán sẵn cho các tuỳ chọn đó bằng
lệnh: Options[Plot3D] hoặc có thể tìm hiểu chi tiết giá trị của tuỳ chọn của đối tượng đồ
thị bằng lệnh Options[đối tượng,tuỳ chọn] hay tỷ mỉ hơn bằng lệnh FullOptions[đối
tượng,tuỳ chọn].

Options[P lot3D]
{AmbientLight → GrayLevel[0], AspectRatio → Automatic, Axes → T rue,
AxesEdge → Automatic, AxesLabel → None, AxesStyle → Automatic,
Background → Automatic, Boxed → T rue, BoxRatios → {1, 1, 0.4},
BoxStyle → Automatic, ClipF ill → Automatic, ColorF unction → Automatic,
ColorF unctionScaling → T rue, ColorOutput → Automatic, Compiled → T rue,
DefaultColor → Automatic, DefaultF ont :→ $DefaultF ont,
DisplayF unction :→ $DisplayF unction, Epilog → {}, F aceGrids → None,
F ormatT ype :→ $F ormatT ype, HiddenSurface → T rue, ImageSize → Automatic,
Lighting → T rue, LightSources → {{{1., 0., 1.}, RGBColor[1, 0, 0]}, {{1., 1., 1.},
RGBColor[0, 1, 0]}, {{0., 1., 1.}, RGBColor[0, 0, 1]}}, Mesh → T rue,
MeshStyle → Automatic, P lot3Matrix → Automatic, P lotLabel → None,
P lotP oints → 25, P lotRange → Automatic, P lotRegion → Automatic,
P rolog → {}, Shading → T rue, SphericalRegion → F alse,
T extStyle :→ $T extStyle, T icks → Automatic, V iewCenter → Automatic,
V iewP oint → {1.3, −2.4, 2.}, V iewV ertical → {0., 0., 1.}}
g = P lot3D[Sin[x] + Cos[y], {x, 0, 10}, {y, 0, 10},
AxesLabel → {"dai", "rong", "cao"}, DefaultF ont → {”V nT ime”, 14},


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 24

Mesh → F alse];

Hình 3.2
Options[g, AxesLabel]
{AxesLabel → {dai, rong, cao}}
F ullOptions[g, P lotRange]

{{0., 10.}, {0., 10.}, {−2.07857, 2.09747}}
Các tuỳ chọn so với đồ thị hai chiều thì đồ thị ba chiều có bổ sung:
- Boxed: Tuỳ chọn của đồ thị ba chiều gồm có hay khơng vẽ hộp ba chiều. Các giá trị
của tuỳ chọn này bao gồm: True_ có vẽ hộp ba chiều, False_ khơng vẽ hộp ba chiều. Giá
trị mặc định của tuỳ chọn là True.
P lot3D[Sin[xy], {x, 0, Π}, {y, 0, Π}, Boxed → F alse];

Hình 3.3
- FaceGrids: Tuỳ chọn của đồ thị ba chiều gồm có (hay khơng) vẽ các đường lưới trên
bề mặt. Đặt các giá trị của tuỳ chọn:
FaceGrids → All: Vẽ đường lưới trên tất cả các hướng.
FaceGrids → None: Không vẽ đường lưới.
FaceGrids → {{dirx, diry , dirz }, ...}: Tuỳ chọn vẽ đường lưới trên từng mặt. Trong đó
diri nhận một trong ba giá trị 0, -1, hoặc +1.
Giá trị mặc định của tuỳ chọn là None. Thí dụ:
P lot3D[Sin[x] + Cos[y], {x, 0, 10}, {y, 0, 10}, AxesLabel → {”dai”, ”rong”, ”cao”},
DefaultF ont → {”V nT ime”, 14}, Mesh → F alse,


KLTN: Sử dụng phần mềm Mathematica để vẽ đồ thị

Phạm Thị HạnhThảo 25

F aceGrids → {{0, 0, −1}, {+1, 0, 0}, {0, 0, +1}}];

Hình 3.4
- Lighting: Là tuỳ chọn của đồ thị ba chiều cho màu cho đồ thị. Các giá trị của tuỳ
chọn bao gồm:
Lighting → True: Có tơ màu cho đồ thị.
Lighting → False: Bỏ tô màu cho đồ thị, chỉ có độ xám.

Giá trị mặc định của tuỳ chọn là True.
- ViewPoint: Tuỳ chọn của đồ thị ba chiều cho ta tuỳ chọn về điểm mà từ đó ta thấy
đồ thị. Giá trị mặc định của tuỳ chọn là {1.3,-2.4,2}. Ta có thể đặt lại giá trị của tuỳ chọn
bằng cách: ViewPoint → {x,y,z}.
Thí dụ: nhìn từ mặt: {0,-2,0}, nhìn từ phía trước và trên xuống: {0.-2,2}, nhìn thẳng
từ trên xuống: {0,0,2}, ...
Có thể chọn điểm nhìn từ thước lệnh Input\3D View Point Selector.
Thí dụ ta có thể thay đổi điểm nhìn đồ thị hàm Sin[x y] như sau:
P lot3D[Sin[xy], {x, 0, 3}, {y, 0, 3}, V iewP oint → {−4.159, 2.732, 2.247}];

Hình 3.5
2.3.2

Đồ thị tham số ba chiều

Đồ thị tham số ba chiều được cho bởi các lệnh sau:
- ParametricPlot3D[{fx, fy , fz }, {t, tmin, tmax }]: Vẽ đồ thị tham số một đường ba
chiều.


×