gpt4 book ai didi

matplotlib - 在 matplotlib 中显示标签的问题

转载 作者:行者123 更新时间:2023-12-01 23:34:06 26 4
gpt4 key购买 nike

我是 python 和 matplotlib 的新用户,所以请保持温和。

我有一个带有更改的 x 和 y 标签的图,因此它们对应于化合物。

然而,例如制作 10x10 的图(我认为限制是 8x8)时,并非我所有的标签都显示。

当然,我希望改变这一点,例如,所有标签都显示在 8 x 12 的图中。

以下是我目前使用的随机数代码。

import numpy as np
import matplotlib.pyplot as plt

HOST = ['RuO2', 'IrO2', 'TiO2', 'MnO2','SnO2','MoO2','NbO2','Dummy','Dummy','Dummy']

GUEST = ['Ru','Ir','Ti','Mn','Sn','Fe','Ni','Zn','Mg','D']

data = np.random.random((10,10))

fig = plt.figure()
ax = fig.add_subplot(111)
cax = ax.matshow(data)
fig.colorbar(cax)

ax.set_xticklabels(['']+HOST,rotation=90)
ax.set_yticklabels(['']+GUEST)

plt.show()

这当然会及时修改为我的数据等。

最佳答案

看看 matplotlib.pyplot.xticks函数,它设置或获取 x 轴刻度位置和标签。如果我这样称呼

locs, labels = plt.xticks()

在您的示例代码中,我得到了 xticks 位于

>>> locs
[ -2., 0., 2., 4., 6., 8., 10.]

请注意 -2 和 10 这两个点有空标签,这对应于 5 个 x 轴刻度位置,因此您不会绘制所有标签,因为 x 轴刻度标签的数量超过了x 轴刻度位置。尝试替换

ax.set_xticklabels(['']+HOST, rotation=90)

ax.xticks(range(len(HOST), HOST, rotation=90)

这里我们设置了 xtick 位置和标签。当然,y 轴刻度线需要类似的替换。

关于matplotlib - 在 matplotlib 中显示标签的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11241943/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com