2017-09-27 109 views
0

我想繪製一個堆積的條形圖。但是,我無法減少條之間的間距。我想保持酒吧狹窄但酒吧之間沒有空間或非常少的空間。如何減少堆疊條形圖中條間的間距?

我使用下面的代碼:

bar(left, height, width=0.8, bottom=None, hold=None, data=None, **kwargs) 

你應該看到的是left參數:

#!/usr/bin/env python3 
# -*- coding: utf-8 -*- 
""" 
Created on Mon Aug 21 16:56:27 2017 

@author: Sayali 
""" 
import seaborn 
import matplotlib.pyplot as plt 
MA1D = [52.18507078,52.18227723,44.02015981] 
MA1S = [47.81492922,47.81772277,55.97984019] 
MA1E = [3.32543281,1.563038488,7.179669498] 
figure = plt.figure() 
figure.text(0.5, 0.04,'Days' , ha='center') 
figure.text(0.02, 0.5, 'Amount of time (Percentage)', va='center', 
rotation='vertical') 
plt.subplot(3, 1, 1) 
plt.grid(zorder=0,which='major', axis='y', color='silver', ls='dotted' 
) 
plt.bar(range(len(MA1D)), MA1D, color='salmon',width=0.1, 
align='center', zorder=2, yerr=MA1E, error_kw=dict(ecolor='red', lw=2, 
capsize=3, capthick=1,zorder=5)) 
plt.bar(range(len(MA1S)), MA1S, bottom=MA1D, 
color='whitesmoke',width=0.1, align='center', zorder=2) 
plt.box(on=None) 
plt.yticks([0,50,100]) 
plt.subplots_adjust(left=0.075, right=0.9, top=0.9, bottom=0.1) 
plt.subplot(3, 1, 2) 
plt.bar(range(len(MA1D)), MA1D) 
plt.bar(range(len(MA1S)), MA1S, bottom=MA1D) 
plt.box(on=None) 
plt.subplot(3, 1, 3) 
plt.bar(range(len(MA1D)), MA1D) 
plt.bar(range(len(MA1S)), MA1S, bottom=MA1D, 
color='whitesmoke',width=0.1, align='center', zorder=2) 

plt.subplots_adjust(wspace=0.07, hspace=0.05) 
plt.show() 

回答

0

的功能欄(如下)的PARAMS是一樣的。這代表了每個酒吧的起點。

在你的代碼

range(len(MA1D)) 
# this would be [0,1,2] 

因此,爲了減少寬度,你只需要做出類似下面

[0.3,0.5,0.7] 

在這種情況下,你應該小心的參數width。正如你可以看到width的默認值是0.8

我相信你可以自己調整它。

相關問題