Matplotlib版本1.5.3 vs 2.2.2 imshow在极轴上

时间:2018-06-12 21:32:16

标签: python matplotlib

我试图在极坐标图中使用imshow进行绘图。这在matplotlib 1.5.3版本中有效,但在2.2.2版本中不再有效。有没有其他方法可以使用吗?我知道我可以使用pcolormeshcontourf来做类似的事情,但我更倾向于使用imshow。一个例子如下:

int ScreenWidth = getResources().getDisplayMetrics().widthPixels;
float Xtouch = event.getRawX();
int sign = Xtouch > 0.5*ScreenWidth ? 1 : -1;
float XToMove = 50; // or whatever amount you want
int durationMs = 50;
v.animate().translationXBy(sign*XToMove).setDuration(durationMs);

版本1.5.3结果: Version 1.5.3 Result: 版本2.2.2结果: Version 2.2.2 Result:

1 个答案:

答案 0 :(得分:0)

您可以创建两个轴,一个笛卡尔轴在背景中显示图像,一个极轴在前景中...根据需要为极轴。

import numpy as np
import matplotlib.pyplot as plt

data = plt.imread("https://matplotlib.org/devdocs/_images/sphx_glr_firefox_001.png")

fig = plt.figure()
#create axes in the background to show cartesian image
ax0 = fig.add_subplot(111)
ax0.imshow(data)
ax0.axis("off")

# create polar axes in the foreground and remove its background
# to see through
ax = fig.add_subplot(111, polar=True, label="polar")
ax.set_facecolor("None")

plt.show()

enter image description here