Python matplotlib固定宽度存储箱的直方图存储箱间距

Python matplotlib固定宽度存储箱的直方图存储箱间距,python,matplotlib,plot,histogram,bins,Python,Matplotlib,Plot,Histogram,Bins,我正在使用matplotlib创建一个直方图,其中存储单元固定为一个像素宽。我想清除这些垃圾箱之间的空白。这本质上意味着将x轴设置为轴上每值一个像素(即:x轴上每100个像素应有100个箱子) 这是我当前使用的代码: def gen_histogram(data, binsize, title=None, minimum=None, maximum=None): import matplotlib.pyplot as plt plt.hold(False) if mi

我正在使用matplotlib创建一个直方图,其中存储单元固定为一个像素宽。我想清除这些垃圾箱之间的空白。这本质上意味着将x轴设置为轴上每值一个像素(即:x轴上每100个像素应有100个箱子)

这是我当前使用的代码:

def gen_histogram(data, binsize, title=None, minimum=None, maximum=None):

    import matplotlib.pyplot as plt
    plt.hold(False)

    if minimum is None:
        minimum = 0
    if maximum is None:
        maximum = 18207

    (n, bins, patches) = plt.hist(data, bins=numpy.arange(minimum, maximum + binsize, binsize), width=1)
    plt.xlabel('z')
    plt.ylabel('% of total')
    plt.title(title, loc='left', fontsize=11)
所以,我希望所有的垃圾箱彼此接触,同时保持一个像素的宽度。这是我当前输出的图片,
.

我不确定您在这里想做什么,您能添加一些测试数据和您得到的图片,并描述您想要的不同之处吗?然而,我确实想已经做了一些评论:1)不要在函数中导入内容,2)在函数调用中将参数设置为“无”,然后稍后覆盖它们有点奇怪,而是将函数调用更改为“最小值=0,最大值=18207”,以及3)为什么要使用plt.hold(False)?下面是我当前输出的图片。我想做的就是去掉你能在图中各个箱子之间看到的空间。你确定你所有的箱子里都有数据吗?你能用一些合成数据更新你的问题,这样我们就可以运行你的例子了吗?是的,我有连续箱中的数据。我修改了第一段,所以我的问题应该会更清楚。
plt.axis('tight')
有帮助吗?