您可以在matplotlib中使用鼠標點擊事件輕鬆確定滴答的座標,而不是猜測它。
import numpy as np
import matplotlib.pyplot as plt
def tell_click_coordinates(event):
print "X: %.0f, Y: %.0f" % (event.xdata, event.ydata)
fig = plt.figure("Ti Zr")
fig.canvas.mpl_connect("button_press_event", tell_click_coordinates)
ax = plt.subplot(111)
im = plt.imshow(np.flipud(plt.imread('14675002_in.png')),
origin='lower',
extent=[0, 800, 1000, 32700])
plt.xticks([10,15, 43, 95, 215,542,800])
plt.yticks([1000, 1860, 2670, 8600, 16600,32700])
plt.axis('normal')
plt.show()
前一後點擊一個刻度會給你:
X: 6, Y: 1576
X: 6, Y: 6902
X: 10, Y: 13037
X: 8, Y: 20415
X: 11, Y: 26383
X: 76, Y: 2177
X: 260, Y: 1846
X: 494, Y: 1846
X: 594, Y: 1680
X: 715, Y: 1928
然後,您可以用這些值來調整你的情節:
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure("Ti Zr")
ax = plt.subplot(111)
im = plt.imshow(np.flipud(plt.imread('14675002_in.png')),
origin='lower',
extent=[0, 800, 1000, 32700])
plt.xticks([76,260,494,594,715,800],[10,15, 43, 95, 215,542,800])
plt.yticks([1576,6902, 13037, 20415, 26383, 32700],[1000, 1860, 2670, 8600, 16600,32700])
plt.axis('normal')
plt.show()
,你會得到
您的原件具有非線性軸,可能是對數。要匹配刻度,你需要弄清楚這個函數是什麼。 – tacaswell
那麼我怎麼才能理解這種方式只有它才能找到這個功能呢? –
繪製蜱的像素位置與其上的數字,並嘗試猜測。 – tacaswell