Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để tăng chất lượng bản đồ màu / đường truyền trong streamplot Matplotlib?

Để tăng chất lượng bản đồ màu / băng thông trong streamplot matplotlib, chúng ta có thể thực hiện các bước sau

Các bước

  • Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô con.

  • Tạo một hình và một tập hợp các ô phụ.

  • Tạo x y điểm dữ liệu và sau đó sử dụng np.meshgrid () để trả về ma trận tọa độ từ các vectơ tọa độ.

  • Tìm X Y sử dụng x y điểm dữ liệu.

  • Tạo âm bản với x, y, X Y điểm dữ liệu. Bạn có thể tăng băng thông bằng cách sử dụng băng thông tham số trong phương thức. Ở đây chúng tôi đã sử dụng linewidth =5.

  • Tạo thanh màu cho phiên bản ScalarMappable, * stream.lines * .

  • Để hiển thị hình này, hãy sử dụng Show () phương pháp.

Ví dụ

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, ax = plt.subplots()

x, y = np.meshgrid(np.linspace(-5, 5, 20), np.linspace(-5, 5, 20))

X = y
Y = 3 * x - 4 * y

stream = ax.streamplot(x, y, X, Y,  density=1, linewidth=5, cmap='plasma', color=Y)

fig.colorbar(stream.lines, ax=ax)

plt.show()

Đầu ra

Nó sẽ tạo ra kết quả sau -

Làm thế nào để tăng chất lượng bản đồ màu / đường truyền trong streamplot Matplotlib?