Bạn có thể thực hiện việc này với bản vá matplotlib.patches.Circle
.
Ví dụ của bạn, chúng ta cần lặp qua các mảng X và Y, sau đó tạo một bản vá vòng tròn cho mỗi tọa độ.
Dưới đây là một ví dụ đặt vòng tròn trên đỉnh của một hình ảnh (từ matplotlib.cbook
)
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Circle
# Get an example image
import matplotlib.cbook as cbook
image_file = cbook.get_sample_data('grace_hopper.png')
img = plt.imread(image_file)
# Make some example data
x = np.random.rand(5)*img.shape[1]
y = np.random.rand(5)*img.shape[0]
# Create a figure. Equal aspect so circles look circular
fig,ax = plt.subplots(1)
ax.set_aspect('equal')
# Show the image
ax.imshow(img)
# Now, loop through coord arrays, and create a circle at each x,y pair
for xx,yy in zip(x,y):
circ = Circle((xx,yy),50)
ax.add_patch(circ)
# Show the image
plt.show()
có thể trùng lặp của [vẽ một vòng tròn với pyplot] (http://stackoverflow.com/questions/9215658/plot-a-circle-with-pyplot) – kazemakase
bạn có chắc chắn không? .. – orkan
Khá như vậy. Câu trả lời cho câu hỏi đó cho thấy cách vẽ vòng tròn, chính xác là những gì bạn đã yêu cầu :) – kazemakase