Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Vẽ điểm phân tán bị che (masked) và đường phân ranh vùng che trong Matplotlib


Các bước

  1. Thiết lập kích thước hình và padding.
  2. Tạo dữ liệu N, r0, x, y, area, c, r, area1, area2 bằng numpy.
  3. Vẽ scatter cho điểm bị che (area1) với marker '^'.
  4. Vẽ scatter cho điểm không che (area2) với marker 'o'.
  5. Vẽ đường tròn phân ranh vùng che bằng plot().
  6. Gọi show().

Ví dụ

import matplotlib.pyplot as plt
import numpy as np

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

N = 100
r0 = 0.6
x = 0.9 * np.random.rand(N)
y = 0.9 * np.random.rand(N)
area = (20 * np.random.rand(N))**2
c = np.sqrt(area)
r = np.sqrt(x**2 + y**2)
area1 = np.ma.masked_where(r < r0, area)
area2 = np.ma.masked_where(r >= r0, area)

plt.scatter(x, y, s=area1, marker='^', c=c)
plt.scatter(x, y, s=area2, marker='o', c=c)
theta = np.arange(0, np.pi/2, 0.01)
plt.plot(r0 * np.cos(theta), r0 * np.sin(theta))
plt.show()

Kết quả

Vẽ điểm phân tán bị che (masked) và đường phân ranh vùng che trong Matplotlib