Python seaborn绘图中的x轴范围更大

Python seaborn绘图中的x轴范围更大,python,matplotlib,graph,seaborn,Python,Matplotlib,Graph,Seaborn,我正在用matplotlib/seaborn绘制一个条形图,范围是最小值/最大值,加上它跳过了计数为0的值。如何既填充范围又不跳过0值 # bar ax2 = figDayMonth.add_subplot(2,1,2) ax2 = sns.countplot(x=np.asarray(dayMonth), palette="pastel") ax2.set_title('Days of Month Counts', FontSize=20) ax2.tick_params(labelsize=

我正在用matplotlib/seaborn绘制一个条形图,范围是最小值/最大值,加上它跳过了计数为0的值。如何既填充范围又不跳过0值

# bar
ax2 = figDayMonth.add_subplot(2,1,2)
ax2 = sns.countplot(x=np.asarray(dayMonth), palette="pastel")
ax2.set_title('Days of Month Counts', FontSize=20)
ax2.tick_params(labelsize=15)
ax2.set_ylabel("Count", FontSize=16)
ax2.set_xlabel("Day of Month", FontSize=16)
sns.despine(left=True, bottom=True, top=True, right=True)
plt.show()
print(2*'\n')

daymount
是具有上述计数的整数列表。例如,虽然没有2、29或30个值,但我仍然希望该图为这些值保留一个位置


我尝试了
ax2.setxticks(np.arange(32))
,但这似乎只是在不改变x轴值的情况下将我的图形向左压缩。

基本上,您希望绘制输入列表的直方图。该直方图可以使用

x = np.arange(1,33)
plt.hist(dayMonth, bins=x)
一个完整的例子是

import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt

dayMonth = [1,3,12,30,2,3,12,16,18,31,3,13,16,18,30,1,3,12,16,18,30]
x = np.arange(1,33)    
_,_,bars = plt.hist(dayMonth, bins=x, align="left")

colors=sns.color_palette(palette="pastel", n_colors=len(x))
for color, bar in zip(colors, bars):
    bar.set_color(color)
plt.gca().set_xlim(-1,32)
plt.xticks(x[:-1])
plt.show()

您可以添加足够的代码来运行它并查看问题吗?
daymount
列表来自于从外部HD路径提取文件时间戳,因此我认为它没有用什么是
daymount
?是否有计数为0的天数?您可能需要阅读和理解。
daymount
只是上面所示计数的整数列表。它不能包含0计数,否则它们将不再是0。我希望有mpl/seaborn经验的人能立即认识到我的错误。我将尝试编写一些代码来生成假数据,以便可以很快运行。“我希望有经验的mpl/seaborn人员能够立即识别我的错误。”即使有人立即看到您的错误,但没有可重复的示例,他们也必须费劲生成数据,以演示如何解决问题。通过创建一个可复制的示例,您可以节省他们的工作量,并增加您自己获得帮助的机会。