擅长:python、mysql、java
<p>{cd1>显然,这样的论点被忽略了</p>
<pre><code>qm2.set_offset_position('data')
qm2.set_offsets([x_shift, y_shift])
</code></pre>
<p>偏移仍然以像素为单位,而不是以数据坐标为单位。在</p>
<p>解决方法是定义自己的转换并将其添加到现有变换之前:</p>
^{pr2}$
<p>完整示例:</p>
<pre><code>import matplotlib.pyplot as plt
import numpy as np
import matplotlib.transforms
s_det = 4
s_array = 14
x_shift = 5
y_shift = 5
array = np.zeros([s_array, s_array])
det = np.random.randint(0, 2, [s_det, s_det])
qm1 = plt.pcolormesh(array, alpha=.0)
qm2 = plt.pcolormesh(det, cmap='Oranges', edgecolor='black')
trans = matplotlib.transforms.Affine2D().translate(x_shift, y_shift)
qm2.set_transform(trans + qm2.get_transform())
ax = plt.gca()
ax.set_aspect('equal')
plt.show()
</code></pre>
<p><a href="https://i.stack.imgur.com/m8ZMN.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/m8ZMN.png" alt="enter image description here"/></a></p>