Python 添加倾斜(浮动)轴以覆盖标准轴

Python 添加倾斜(浮动)轴以覆盖标准轴,python,matplotlib,axes,Python,Matplotlib,Axes,我正在寻找一种方法来添加一个额外的轴对,包括倾斜和原点位移。它们应添加到已用于显示图像的轴上 结果应该看起来很接近 y x+y |\ / 9 | + -2 + 18 | \ / | \ / 8 | x | / \ | / \ 7 | + 14 \x-y |/ + 2 +--------------------- x 7

我正在寻找一种方法来添加一个额外的轴对,包括倾斜和原点位移。它们应添加到已用于显示图像的轴上

结果应该看起来很接近

    y         x+y
    |\       /
  9 | + -2  + 18
    |  \   /
    |   \ /     
  8 |    x        
    |   / \
    |  /   \
  7 | + 14  \x-y
    |/       + 2
    +--------------------- x
    7    8    9             
(不幸的是,我不允许上传我创建的实际图像)

在我的例子(8,8)中,倾斜轴的中心应该定位在某个坐标(x0,y0),我希望能够像处理正常轴一样处理新轴,即在它们上使用设置标签、栅格等功能

我试图使用仿射2D变换、浮动轴和脊椎获得结果,但无法正确把握这一点。欢迎任何帮助

图像中不重要的部分是使用

import numpy as np
import matplotlib.pyplot as plt

X = Y = np.linspace(7, 9, 100)
XX, YY = np.meshgrid(X,Y)
Z = np.exp(-(XX-XX.mean())**2/1 - (YY-YY.mean())**2/5)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.imshow(Z, origin='lower', extent=[X.min(), X.max(), Y.min(), Y.max()])
ax.set_xlabel("x")
ax.set_ylabel("y")
ax.grid(True, color='white')

提前感谢。

这是matplotlib的一个难题,与我过去遇到的问题类似。我知道,有了大量的旋转时间,我相信使用浮动轴可以实现您的要求

我曾在matplotlib-devel邮件列表上对此展开讨论,但遗憾的是,没有人给出任何答案


我将尝试制作一个浮动轴的工作示例,但不知道我会有多成功…

非常感谢。那太好了。事实上,过了一会儿,我偶然发现了一个软件包,它显然成功地处理了天文图像中的这种浮动轴。不幸的是,这个包似乎是为处理某些天体物理数据而定制的,这需要一些额外的“魔法”来实例化一个轴。您所指的库似乎是在mpl AxisArtister实现中使用浮动轴艺术家。其局限性在于必须为轴指定一个常量数据值(或者看起来是这样)。