相关疑难解决方法(0)

如何在matplotlib中显示所有标签值?

我有两个列表,当我使用以下代码绘图时,x轴最多只显示12(最大值为15).我可以知道如何将x列表中的所有值显示到x轴?提前致谢.

x = [4,5,6,7,8,9,10,11,12,13,14,15,0,1,2,3]
y = [10,20,30,40,50,60,70,80,90,100,110,120,130,140,150,160]
fig = plt.figure()
ax1 = fig.add_subplot(111)
ax1.plot(np.arange(len(x)), y, 'o')
ax1.set_xticklabels(x)
plt.show()
Run Code Online (Sandbox Code Playgroud)

如果我在set_xticklabels函数中设置minor = True ,它会显示所有x = 2,4,6,8,..,16 ......但我想要所有值.

PS我的x轴未排序,应显示如图所示.

python graph matplotlib axis-labels

18
推荐指数
1
解决办法
2万
查看次数

Matplotlib:将x轴刻度标签向左移动一个位置

我正在制作条形图,我想将x轴刻度标签向左移动一个位置.这是情节的代码:

matplotlib.rcParams.update(matplotlib.rcParamsDefault)
plt.style.use(['seaborn-white', 'bmh'])

fig1, ax = plt.subplots()

palette = ['#2a5495', '#07a64c', '#e979ad', '#d88432', '#2a5495',
               '#b7040e', '#82c5db', '#b9c09b', '#cd065d', '#4b117f']

x = np.array(df.index)
y = np.array(df.loc[:, 2015])

width = 1.0
lefts = [x * width for x, _ in enumerate(y)]
ax.bar(left = lefts, height = y, width = width, tick_label = x, color = palette, label = ranked_univs)

ax.axis(ymin = 0, ymax = 200, xmin = -0.5, xmax = 9.5)
ax.tick_params(axis='x', which='major', labelsize=8)
ax.set_xticklabels(ax.xaxis.get_majorticklabels(), rotation=45)

fig1.tight_layout()
plt.show()
Run Code Online (Sandbox Code Playgroud)

这是条形图:

在此输入图像描述

任何线索?

python matplotlib

2
推荐指数
1
解决办法
5565
查看次数

标签 统计

matplotlib ×2

python ×2

axis-labels ×1

graph ×1