matplotlib 如何显示置信椭圆的轴

siotufzp  于 2023-06-23  发布在  其他
关注(0)|答案(1)|浏览(113)

我知道如何绘制二维数据集的置信椭圆,使用:

from matplotlib.patches import Ellipse

全局语法为:

matplotlib.patches.Ellipse(xy, width, height, angle=0, **kwargs)

但我没有在文档中找到如何绘制椭圆的两个长轴和短轴...我想应该在kwargs参数中使用一些指令,但我找不到是哪些指令。

kx1ctssn

kx1ctssn1#

没有预定义的方法或kwarg来绘制轴,但您可以使用corners属性轻松获得轴端点:

import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse, Path, PathPatch
import numpy as np

fig, ax = plt.subplots(subplot_kw=dict(aspect='equal'))
ellipse = Ellipse([1, 2], 3, 4, angle=50, fill=False)
ax.add_patch(ellipse)
ax.autoscale_view()

c = ellipse.get_corners()
axes = np.vstack([(c[0]+c[3])/2, (c[1]+c[2])/2, [np.nan, np.nan], (c[0]+c[1])/2, (c[2]+c[3])/2])
ax.add_patch(PathPatch(Path(axes), ls=':'))

相关问题