matplotlib在3D中反转y轴会丢失标签。需要针对此已知错误的解决方法

时间:2012-11-30 18:28:43

标签: python 3d matplotlib

还有一个known bug尚未在matplotlib中修复。

请考虑此代码段。通过反转y轴,刻度线消失,z轴上的填充变化。

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

ax.set_xlim3d(0,1)
ax.set_ylim3d(0,1)
ax.set_ylim3d(1,0)
plt.show()

在此期间,是否有人为此解决了这个问题?

谢谢!

1 个答案:

答案 0 :(得分:0)

也许您可以将数据带到[0,1]范围(或[yourmin,yourmax],其中yourmin< yourmax),然后只需更改轴刻度标签:


import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    import numpy as np

    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')

    ax.set_xlim3d(0,1)
    ax.set_ylim3d(0,1)
    # setting ticks positions
    ax.set_xticks(np.arange(0,1.1,0.2))
    ax.set_yticks(np.arange(0,1.1,0.2))
    # setting ticks labels
    ax.set_xticklabels(np.arange(1, -.1,-.2,).round(1))
    ax.set_yticklabels(np.arange(1, -.1,-.2,).round(1))

    plt.show()