如何從 matplotlib 的等高線中獲取座標?


要從 matplotlib 中的等高線獲取座標,我們可以採取以下步驟 −

  • 設定圖形大小並調整子圖之間的以及周圍的填充。
  • 使用資料點建立 x, ym 的列表。
  • 使用 plt.contour(x, y, m) 建立帶有 x、y 和 m 資料點的等高線圖。
  • 獲取等高線集合例項。
  • 獲取集合的路徑,並列印等高線的頂點或座標。
  • 要顯示圖形,請使用 show() 方法。

示例

import matplotlib.pyplot as plt

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

x = [1, 2, 3, 4]
y = [1, 2, 3, 4]
m = [[15, 14, 13, 12], [14, 12, 10, 8], [13, 10, 7, 4], [12, 8, 4, 0]]

cs = plt.contour(x, y, m)

for item in cs.collections:
   for i in item.get_paths():
      v = i.vertices
      x = v[:, 0]
      y = v[:, 1]
      print(x, y)
plt.show()

輸出

它將產生以下輸出

此外,它還將在終端上列印等高線的座標

[4.] [4.]
[4. 3.5] [3.5 4. ]
[4. 3.] [3. 4.]
[4.      3.33333333 3.     2.5 ] [2.5    3.     3.33333333 4.   ]
[4.      3. 2.66666667     2. ]  [2.     2.66666667   3.   4. ]
[4. 3. 2. 1.5] [1.5 2. 3. 4. ]
[4. 3. 2.     1.33333333 1. ] [1. 1.33333333 2. 3. 4. ]
[2. 1.] [1. 2.]

更新於: 22-Sep-2021

5K+ 瀏覽

開啟您的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.