如何使用matplotlib条形图增加每个条形图之间的空间,因为它们一直将其自身填充到中心.
(这是它目前的外观)
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
def ww(self):#wrongwords text file
with open("wrongWords.txt") as file:
array1 = []
array2 = []
for element in file:
array1.append(element)
x=array1[0]
s = x.replace(')(', '),(') #removes the quote marks from csv file
print(s)
my_list = ast.literal_eval(s)
print(my_list)
my_dict = {}
for item in my_list:
my_dict[item[2]] = my_dict.get(item[2], 0) + 1
plt.bar(range(len(my_dict)), my_dict.values(), align='center')
plt.xticks(range(len(my_dict)), my_dict.keys())
plt.show()
4条答案
按热度按时间9fkzdhlc1#
尝试替换
与
选项
align='edge'
将消除条形图左侧白色。width=0.3
设置条的宽度小于默认值。条的间距将相应调整。对于沿着x轴的标签,应将其旋转90度以使其可读。
uinbv5nw2#
有两种方法可以增加条形图之间的间距。这里是绘图函数
减小条形图宽度
plot函数有一个宽度参数,用于控制条形图的宽度。如果您减小宽度,条形图之间的间距将自动减小。默认情况下,宽度设置为0.8。
缩放x轴,使条形图彼此相距更远
如果你想保持宽度不变,你必须在x轴上放置条的地方留出空间。你可以使用任何缩放参数。
pwuypxnk3#
这个答案可以改变条之间的间距,也可以旋转x轴上的标签。它还可以让你改变图形的大小。
tvmytwxo4#
将x轴限值从略负的值设置为略大于图中条形数量的值,并在barplot命令中更改条形的宽度
例如,我为只有两个条形的条形图做了这个
ax1.axes.set_xlim(-0.5,1.5)