Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何删除条形图中条形图之间的x轴间距?_Python_Matplotlib_Bar Chart - Fatal编程技术网

Python 如何删除条形图中条形图之间的x轴间距?

Python 如何删除条形图中条形图之间的x轴间距?,python,matplotlib,bar-chart,Python,Matplotlib,Bar Chart,在更改宽度以使钢筋变小后,它已移到侧面。如何删除它们之间的间距。理想情况下,我想居中,但在文档中似乎没有设置参数。手动缩放图片也不会缩小此差距 import numpy as np import matplotlib.pyplot as plt objects = ('bar1', 'bar2') y_pos = np.arange(len(objects)) performance = [2,6] stds=[0.3,0.5] plt.bar(y_pos, performance, 0.3

在更改宽度以使钢筋变小后,它已移到侧面。如何删除它们之间的间距。理想情况下,我想居中,但在文档中似乎没有设置参数。手动缩放图片也不会缩小此差距

import numpy as np
import matplotlib.pyplot as plt

objects = ('bar1', 'bar2')
y_pos = np.arange(len(objects))
performance = [2,6] 
stds=[0.3,0.5]
plt.bar(y_pos, performance, 0.3, align='center', yerr=stds,capsize=5, alpha=0.5)
plt.xticks(y_pos, objects)
plt.ylabel('Time (seconds)')
plt.show()

列表
y\u pos
将条的位置设置为0和1,然后将宽度设置为.3,间隙为0.7

您必须使用某些值替换
y_pos
,以使条形图彼此靠近:第一个条形图必须位于
width/2
位置,第二个条形图位于
1.5*width
位置。 然后,您必须使用
xlim
方法选择x轴的最佳限制,以使钢筋居中

import numpy as np
import matplotlib.pyplot as plt

objects = ('bar1', 'bar2')
w = 0.3
y_pos = (w/2.,w*1.5)
performance = [2,6] 
stds=[0.3,0.5]
plt.bar(y_pos, performance, width=w, align='center', yerr=stds,capsize=5, alpha=0.5)
plt.gca().set_xlim([-1.,1.5])
plt.xticks(y_pos, objects)
plt.ylabel('Time (seconds)')
plt.show()
我希望有更灵活、更优雅的解决方案。

使用
plt.图(1,figsize=(宽度,高度))
其中
width
height
表示图的尺寸,单位为英寸,@Flomp不幸的是,即使有极值,间隙仍然保持不变