NumPy - Matplotlib
Matplotlib là một thư viện vẽ đồ thị cho Python. Nó được sử dụng cùng với NumPy để cung cấp một môi trường thay thế nguồn mở hiệu quả cho MatLab. Nó cũng có thể được sử dụng với các bộ công cụ đồ họa như PyQt và wxPython.
Mô-đun Matplotlib lần đầu tiên được viết bởi John D. Hunter. Kể từ năm 2012, Michael Droettboom là nhà phát triển chính. Hiện tại, Matplotlib ver. 1.5.1 là phiên bản ổn định có sẵn. Gói này có sẵn ở dạng phân phối nhị phân cũng như ở dạng mã nguồn trên www.matplotlib.org .
Thông thường, gói được nhập vào tập lệnh Python bằng cách thêm câu lệnh sau:
from matplotlib import pyplot as plt
Đây pyplot()là hàm quan trọng nhất trong thư viện matplotlib, được sử dụng để vẽ dữ liệu 2D. Tập lệnh sau vẽ phương trìnhy = 2x + 5
Thí dụ
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(1,11)
y = 2 * x + 5
plt.title("Matplotlib demo")
plt.xlabel("x axis caption")
plt.ylabel("y axis caption")
plt.plot(x,y)
plt.show()
Một đối tượng ndarray x được tạo từ np.arange() function như các giá trị trên x axis. Các giá trị tương ứng trêny axis được lưu trữ trong một ndarray object y. Các giá trị này được vẽ bằng cách sử dụngplot() chức năng của mô-đun con pyplot của gói matplotlib.
Biểu diễn đồ họa được hiển thị bởi show() chức năng.
Đoạn mã trên sẽ tạo ra kết quả sau:
Thay vì biểu đồ tuyến tính, các giá trị có thể được hiển thị riêng biệt bằng cách thêm chuỗi định dạng vào plot()chức năng. Các ký tự định dạng sau có thể được sử dụng.
Sr.No. | Nhân vật & Mô tả |
---|---|
1 | '-' Kiểu đường liền nét |
2 | '--' Kiểu đường đứt nét |
3 | '-.' Kiểu đường dấu gạch ngang |
4 | ':' Kiểu đường chấm |
5 | '.' Điểm đánh dấu |
6 | ',' Điểm đánh dấu pixel |
7 | 'o' Điểm đánh dấu vòng tròn |
số 8 | 'v' Điểm đánh dấu tam giác_dưới |
9 | '^' Triangle_up marker |
10 | '<' Điểm đánh dấu tam giác_left |
11 | '>' Điểm đánh dấu tam giác_phải |
12 | '1' Tri_down marker |
13 | '2' Tri_up marker |
14 | '3' Điểm đánh dấu Tri_left |
15 | '4' Điểm đánh dấu Tri_right |
16 | 's' Điểm đánh dấu hình vuông |
17 | 'p' Điểm đánh dấu Lầu Năm Góc |
18 | '*' Dấu sao |
19 | 'h' Điểm đánh dấu hình lục giác1 |
20 | 'H' Điểm đánh dấu Hexagon2 |
21 | '+' Điểm đánh dấu cộng |
22 | 'x' Điểm đánh dấu X |
23 | 'D' Điểm đánh dấu kim cương |
24 | 'd' Điểm đánh dấu Thin_diamond |
25 | '|' Điểm đánh dấu Vline |
26 | '_' Điểm đánh dấu dòng |
Các chữ viết tắt màu sau đây cũng được xác định.
Tính cách | Màu sắc |
---|---|
'b' | Màu xanh da trời |
'g' | màu xanh lá |
'r' | Đỏ |
'c' | Lục lam |
'm' | Đỏ tươi |
'y' | Màu vàng |
'k' | Đen |
'w' | trắng |
Để hiển thị các vòng tròn đại diện cho các điểm, thay vì đường trong ví dụ trên, hãy sử dụng “ob” dưới dạng chuỗi định dạng trong hàm plot ().
Thí dụ
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(1,11)
y = 2 * x + 5
plt.title("Matplotlib demo")
plt.xlabel("x axis caption")
plt.ylabel("y axis caption")
plt.plot(x,y,"ob")
plt.show()
Đoạn mã trên sẽ tạo ra kết quả sau:
Lô sóng hình sin
Tập lệnh sau tạo ra sine wave plot sử dụng matplotlib.
Thí dụ
import numpy as np
import matplotlib.pyplot as plt
# Compute the x and y coordinates for points on a sine curve
x = np.arange(0, 3 * np.pi, 0.1)
y = np.sin(x)
plt.title("sine wave form")
# Plot the points using matplotlib
plt.plot(x, y)
plt.show()
subplot ()
Hàm subplot () cho phép bạn vẽ những thứ khác nhau trong cùng một hình. Trong kịch bản sau,sine và cosine values được âm mưu.
Thí dụ
import numpy as np
import matplotlib.pyplot as plt
# Compute the x and y coordinates for points on sine and cosine curves
x = np.arange(0, 3 * np.pi, 0.1)
y_sin = np.sin(x)
y_cos = np.cos(x)
# Set up a subplot grid that has height 2 and width 1,
# and set the first such subplot as active.
plt.subplot(2, 1, 1)
# Make the first plot
plt.plot(x, y_sin)
plt.title('Sine')
# Set the second subplot as active, and make the second plot.
plt.subplot(2, 1, 2)
plt.plot(x, y_cos)
plt.title('Cosine')
# Show the figure.
plt.show()
Đoạn mã trên sẽ tạo ra kết quả sau:
quán ba()
Các pyplot submodule cung cấp bar()chức năng tạo biểu đồ thanh. Ví dụ sau tạo biểu đồ thanh của hai tập hợpx và y mảng.
Thí dụ
from matplotlib import pyplot as plt
x = [5,8,10]
y = [12,16,6]
x2 = [6,9,11]
y2 = [6,15,7]
plt.bar(x, y, align = 'center')
plt.bar(x2, y2, color = 'g', align = 'center')
plt.title('Bar graph')
plt.ylabel('Y axis')
plt.xlabel('X axis')
plt.show()
Mã này sẽ tạo ra kết quả sau: