我使用以下命令在图像上绘制一些圆圈:
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.patches as mpatches
image = np.zeros((20,20))
x_coords = [3,12]
y_coords = [3,12]
fig, ax = plt.subplots()
ax.imshow(image)
for a,b in zip(x_coords,y_coords):
    circle = plt.Circle((a, b), 2, color="yellow", fill=False, linewidth=2)
    ax.add_artist(circle)
然后我可以使用这个问题的答案之一添加一个图例:
patches = [mpatches.Patch(color="yellow", label="Test")]
plt.legend(handles=patches, bbox_to_anchor=(1.05, 1), loc=2)
产生这个数字:
如何将图例手柄从矩形更改为圆形(类似于在图像上绘制的内容)?
我尝试过使用
patches = [mpatches.Circle((0,0), 2, color="yellow", label="Test")]
plt.legend(handles=patches, bbox_to_anchor=(1.05, 1), loc=2)
它仍然在图例中产生一个矩形。我也尝试过
plt.legend(handles=[circle], labels=["Test"], bbox_to_anchor=(1.05, 1), loc=2)
仍然会产生一个矩形,但没有填充。期望的结果应该是有一个圆圈,其颜色和填充与图像上绘制的颜色和填充相同,作为图例标记。
我正在使用 Python 3.4 和 matplotlib 2.1.0
| 归档时间: | 
 | 
| 查看次数: | 3222 次 | 
| 最近记录: |