【发布时间】:2016-01-11 14:08:56
【问题描述】:
我真的无法得到这个,我需要在图像上叠加一个椭圆。问题是用 matplotlib.patches 绘制椭圆,但最终得到的是白色图形或实心椭圆。代码非常原始,我不知道该怎么做,因为我从未使用过 matplotlib 库的这一部分。
import matplotlib.pyplot as plt
import numpy.random as rnd
from matplotlib.patches import Ellipse
ells = [Ellipse(xy=[0,0], width=30, height=10, angle=0,edgecolor='b', lw=4)]
fig = plt.figure(0)
ax = fig.add_subplot(111, aspect='equal')
for e in ells:
ax.add_artist(e)
e.set_alpha(1)
e.set_facecolor(none) #obvious mistake, but no idea what to do
ax.set_xlim(-100, 100)
ax.set_ylim(-100, 100)
plt.show()
我尝试查找 matplotlib.patches 页面,但没有关于如何绘制椭圆的明确信息,只是使用的函数。
非常感谢一些帮助。
感谢您的宝贵时间。
【问题讨论】:
-
尝试将N大写为None,它应该可以这样工作。
-
@MadPhysicist - 这将导致 facecolor 使用默认的蓝色(当前行为)。要在 matplotlib 中不指定颜色,请使用字符串
'none'。 -
学到了一些新东西。无论哪种方式,OP 都在正确的轨道上,只差一两个角色。
-
e.set_fill(False)如果目标是一个“未填充”的椭圆
标签: python matplotlib plot ellipse