Matplotlib set_xticklabels未对齐 - python

我有一个y轴双图,但xticks标签无法正常工作。
这是当我不修改xticks时:
Matplotlib set_xticklabels未对齐 - python
这是我做的时候:
Matplotlib set_xticklabels未对齐 - python

neurons = [4, 8, 16, 32, 64, 128]
fig, ax = plt.subplots(figsize=(13,7))
ax2 = ax.twinx()
# adding the plots
ax.grid(False)
ax2.grid(False)
ax.set_xticklabels(neurons)
ax.set_yticklabels(np.arange(250, 2500,250),fontsize=14)
ax2.set_yticklabels(np.arange(0, 120,20),fontsize=14)
ax.set_ylabel('Training time [s]', fontsize=18)
ax2.set_ylabel('Model avg accuracy [%]', fontsize=18)
ax.set_xlabel('Number of neurons', fontsize=18)
ax2.legend(fontsize=15)
plt.show()

参考方案

您正在将新的x刻度标签设置到自动生成的xticks上。您可能希望将刻度位置设置为neruons的值:

ax.set_xticks(neurons)
ax.set_xticklabels(neurons)

这给像

Matplotlib set_xticklabels未对齐 - python

matplotlib:使加号变粗 - python

在Matplotlib中,我想绘制一个粗体加号(或一个十字),但是marker set中提供的那个太 thin 。即使增加它的大小,它也不会变厚。对于example:绘制红色加号的lines of code是:# Draw median marker. if plot_opts.get('bean_show_median', True):…

Matplotlib-固定x轴缩放比例和自动缩放y轴 - python

我只想绘制部分数组,固定x部分,但让y部分自动缩放。我尝试如下所示,但是它不起作用。有什么建议么?import numpy as np import matplotlib.pyplot as plt data=[np.arange(0,101,1),300-0.1*np.arange(0,101,1)] plt.figure() plt.scatter(da…

matplotlib imshow-默认颜色标准化 - python

使用imshow时,我的颜色映射一直存在问题,有些颜色似乎只是变成黑色。我终于意识到,默认情况下,imshow似乎可以规范我给它的浮点值矩阵。我本来希望像[[0,0.25],[0.5,0.75]]这样的数组可以显示对应于这些绝对值的映射中的适当颜色,但是0.75将被解释为1。在极端情况下,N x N数组为0.2(例如),只会产生一个大的黑色方块,而不是在颜色…

Matplotlib-更改自动轴范围 - python

我将自动轴范围用于数据。例如,当我使用-29到+31之间的x数据时,ax = plt.gca() xsta, xend = ax.get_xlim() 我得到-30和40,这不能正确描述数据范围。我希望看到轴范围四舍五入为5,即极限为-30和35。有可能这样做吗?或者,是否有可能获取x轴数据的精确范围(-29,31),然后编写算法手动更改该值(使用set_x…

matplotlib中的文本部分着色 - python

matplotlib中是否可以部分指定字符串的颜色?例:plt.ylabel("Today is cloudy.") 如何将“今天”显示为红色,“是”显示为绿色和“多云”。如蓝色?谢谢。 参考方案 我只知道如何非交互地执行此操作,即使那样也只能使用“PS”后端。为此,我将使用Latex设置文本格式。然后,我将包含“颜色”包,并根据需要设置…