SymPy - Lập kế hoạch
SymPy sử dụng thư viện Matplotlib làm chương trình phụ trợ để hiển thị các ô 2-D và 3-D của các hàm toán học. Đảm bảo rằng Matplotlib có sẵn trong cài đặt Python hiện tại. Nếu không, hãy cài đặt tương tự bằng lệnh sau:
pip install matplotlib
Hỗ trợ vẽ đồ thị được định nghĩa trong mô-đun Treaty.plotting. Các chức năng sau có trong mô-đun vẽ đồ thị:
plot - Đồ thị đường thẳng 2D
plot3d - Đồ thị đường 3D
plot_parametric - Các ô tham số 2D
plot3d_parametric - Biểu đồ tham số 3D
Hàm plot () trả về một thể hiện của lớp Plot. Một hình vẽ có thể có một hoặc nhiều biểu thức SymPy. Mặc dù nó có khả năng sử dụng Matplotlib làm phụ trợ, các phụ trợ khác như texplot, pyglet hoặc API biểu đồ của Google cũng có thể được sử dụng.
plot(expr, range, kwargs)
trong đó expr là bất kỳ biểu thức symPy hợp lệ nào. Nếu không được đề cập, phạm vi sử dụng mặc định là (-10, 10).
Ví dụ sau vẽ các giá trị của x2 cho mỗi giá trị trong phạm vi (-10,10) -
>>> from sympy.plotting import plot
>>> from sympy import *
>>> x=Symbol('x')
>>> plot(x**2, line_color='red')
Để vẽ nhiều ô cho cùng một dải ô, hãy đưa ra nhiều biểu thức trước bộ dải ô.
>>> plot( sin(x),cos(x), (x, -pi, pi))
Bạn cũng có thể chỉ định phạm vi riêng biệt cho từng biểu thức.
plot((expr1, range1), (expr2, range2))
Hình sau vẽ biểu đồ sin (x) và cos (x) trên các khoảng khác nhau.
>>> plot( (sin(x),(x, -2*pi, 2*pi)),(cos(x), (x, -pi, pi)))
Các đối số từ khóa tùy chọn sau có thể được chỉ định trong hàm plot ().
line_color - chỉ định màu của đường vẽ.
title - một chuỗi được hiển thị dưới dạng tiêu đề
xlabel - một chuỗi được hiển thị dưới dạng nhãn cho trục X
ylabel - một chuỗi được hiển thị dưới dạng nhãn cho trục y
>>> plot( (sin(x),(x, -2*pi, 2*pi)),(cos(x), (x, -pi, pi)), line_color='red', title='SymPy plot example')
Hàm plot3d () hiển thị một biểu đồ ba chiều.
plot3d(expr, xrange, yrange, kwargs)
Ví dụ sau đây vẽ sơ đồ bề mặt 3D -
>>> from sympy.plotting import plot3d
>>> x,y=symbols('x y')
>>> plot3d(x*y, (x, -10,10), (y, -10,10))
Như trong cốt truyện 2D, một biểu đồ ba chiều cũng có thể có nhiều ô với phạm vi khác nhau.
>>> plot3d(x*y, x/y, (x, -5, 5), (y, -5, 5))
Hàm plot3d_parametric_line () hiển thị biểu đồ đường tham số 3 chiều.
>>> from sympy.plotting import plot3d_parametric_line
>>> plot3d_parametric_line(cos(x), sin(x), x, (x, -5, 5))
Để vẽ biểu đồ bề mặt tham số, hãy sử dụng hàm plot3d_parametric_surface ().
plot3d_parametric_surface(xexpr, yexpr, zexpr, rangex, rangey, kwargs)
>>> from sympy.plotting import plot3d_parametric_surface
>>> plot3d_parametric_surface(cos(x+y), sin(x-y), x-y, (x, -5, 5), (y, -5, 5))