我想为男性和女性的一些参数绘制条形图。我这样做了:
我想在上侧(正 y 轴)显示平均值的频率,在下侧(负 x 轴)显示女性的频率。在这种情况下,对于频率,只有幅度很重要,而符号则无关紧要。为方便起见,我在上侧显示了一个,在下侧显示了另一个。我可以更改负 y 轴上的标签 (-5, -10, ... 此处) 以便它们的大小保持不变但都是正的 (5, 10,...) 。现在应该有两个正 y 轴,一个是另一个的镜像。
最佳答案
当然可以。这是一个您可以尝试的示例:
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111)
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)
ax.plot(x,y)
ax.set_yticklabels([str(abs(x)) for x in ax.get_yticks()])
ax.show()
这里我只是将 yticklabel 设置为 y 位置的绝对值。当然,我有对称数据而你没有。如果您希望它在中间“镜像”,您需要使用 ax.set_ylim
关于python - 将负 y 轴转换为正 (matplotlib),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20393663/