用 Matplotlib 涂色圆形/贴片的交集


若要使用 Matplotlib 涂色圆形/贴片的交集,我们可以采取以下步骤:

  • 设置图形大小并调整子图间和子图周围的内边距。
  • 创建 ab 点。
  • 从两个点 ab 获取左侧、右侧和中间区域。
  • 使用 gca() 方法获取当前坐标轴
  • 添加具有不同颜色和部分的贴片。
  • 设置 X 和 Y 坐标轴缩放比例。
  • 设置纵横比相等。
  • 关闭坐标轴。
  • 若要显示图形,请使用 show() 方法。

示例

import shapely.geometry as sg
import matplotlib.pyplot as plt
import descartes

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

a = sg.Point(-.5, 0).buffer(1.)
b = sg.Point(0.5, 0).buffer(1.)

left = a.difference(b)
right = b.difference(a)
middle = a.intersection(b)

ax = plt.gca()
ax.add_patch(descartes.PolygonPatch(left, fc='b', ec='k'))
ax.add_patch(descartes.PolygonPatch(right, fc='r', ec='k'))
ax.add_patch(descartes.PolygonPatch(middle, fc='g', ec='k'))

ax.set_xlim(-2, 2)

ax.set_ylim(-2, 2)

ax.set_aspect('equal')

ax.axis('off')

plt.show()

输出

更新于:2021 年 7 月7 日

浏览量:545

启动你的职业生涯

完成课程获得认证

开始使用
广告
© . All rights reserved.