我有一個數據集是這樣的:如何嵌套分支情節在python
樣品數據框:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
我只知道如何生成單獨的情節:
for k, m in zip('ABCD', 'mbry'):
plt.figure(k)
for i in range(5):
plt.subplot(5,1,i+1)
plt.bar(range(20), df[k][20*i: 20*(i+1)], color = m)
plt.subplots_adjust(wspace=0, hspace=0)
plt.show()
我怎樣才能在同一頁面中繪製所有四個數字?
更新於2017年8月2日:
我也想將其應用到更大的數據集。這是@ Phlya的代碼,我試過,但它並沒有給我什麼,我想:
更大的數據集:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import gridspec
df = pd.DataFrame(np.random.randint(0,100,size=(100, 11)), columns=list('ABCDEFGHIJK'))
from mpl_toolkits.axes_grid1 import axes_grid
f = plt.figure()
for i, (k, m) in enumerate(zip('ABCDEFGHIJK', 'mbrygrygybr')):
ag = axes_grid.Grid(f, 261+i, (5, 1), axes_pad=0)
for j in range(5):
ag[j].bar(range(20), df[k][20*j: 20*(j+1)], color = m)
ag[j].set_ylim(0, df.max().max())
if i%2==0:
if j == 4:
ag[j].yaxis.set_ticks([0, ag[j].get_yticks()[-1]])
else:
ag[j].yaxis.set_ticks([ag[j].get_yticks()[-1]])
else:
ag[j].yaxis.set_ticks([])
if i in (0, 1):
ag[j].xaxis.set_ticks([])
plt.subplots_adjust(wspace=0.5, hspace=0.5)
plt.show()
'''plt.figure'''做什麼? – wwii
@wwii對不起,我原來的帖子沒有說清楚。我想得到和我的代碼一樣的情節。但我希望他們在同一頁面。 – Kevin