在轴上移动文字

时间:2018-07-27 15:13:07

标签: python matplotlib plot axis-labels

我正在尝试移动在x轴上添加的文本。不幸的是,我似乎无法做到这一点。

这是代码:

import numpy as np
import matplotlib.pyplot as plt

data = [[5., 25., 50., 20.],
    [4., 23., 51., 17.],
    [6., 22., 52., 19.]]
classes = ['Car', 'Home', 'House_num', 'River']

X = np.arange(4)
plt.bar(X + 0.00, data[0], color = 'b', width = 0.25)
plt.bar(X + 0.25, data[1], color = 'g', width = 0.25)
plt.bar(X + 0.50, data[2], color = 'r', width = 0.25)

plt.xticks(np.arange(5), classes)
plt.show()

这是结果图:

Graph

我正在尝试移动classes,使它们位于绿色条的中央。我查看了xticks文档,发现了一个参数locs,我认为这是我手动设置位置所需要的参数(文档为here)。这是我的尝试(不起作用):

plt.xticks(np.arange(5), classes, locs=[1.2, 2.2, 3.2, 4.2])

locs值只是上面代码中的一个测试;他们仍然需要进行调整以实现正确的对齐。对齐部分不太重要,我对仅能够操纵标签的位置更感兴趣。我会在最后进行细调。

祝您有美好的一天,并感谢您抽出宝贵的时间阅读本文。和平!

1 个答案:

答案 0 :(得分:0)

我建议您只替换此行:

plt.xticks(np.arange(5), classes)

具有以下其中一项:

plt.xticks(np.arange(0.25,5), classes)
plt.xticks(X + 0.25, classes)