Я хочу создать коробчатую диаграмму данных, собранных с четырех разных сайтов за последние двадцать лет (т.е. на каждом сайте будет 20 лет данных). В результате получится 80 коробок на фигуре. Чтобы рисунок был разборчивым, я хочу, чтобы каждое поле было смещено, и чтобы для каждого сайта были разные цветные поля. В результате появится повторяющаяся серия блоков (например, блоки для site1, site2, site3, site3, site1, site2, site3, ...). Создать коробчатую диаграмму - не проблема; смещение ящиков кажется проблемой. например
import numpy as np
import pandas as pd
from pylab import *
first = pd.DataFrame(np.random.rand(10,5),columns=np.arange(0,5))
second = pd.DataFrame(np.random.rand(10,5),columns=np.arange(5,10))
fig = figure( figsize=(9,6.5) )
ax = fig.add_subplot(111)
box1 = first.boxplot(ax=ax,notch=False,widths=0.20,sym='',rot=-45)
setp(box1['caps'],color='r',linewidth=2)
setp(box1['boxes'],color='r',linewidth=2)
setp(box1['medians'],color='r',linewidth=2)
setp(box1['whiskers'],color='r',linewidth=2,linestyle='-')
box2 = second.boxplot(ax=ax,notch=False,widths=0.20,sym='',rot=-45)
setp(box2['caps'],color='k',linewidth=2)
setp(box2['boxes'],color='k',linewidth=2)
setp(box2['medians'],color='k',linewidth=2)
setp(box2['whiskers'],color='k',linewidth=2,linestyle='-')
Первоначально я надеялся, что Pandas будет индексировать ось x по имени столбца, но Pandas, похоже, индексирует ось x в соответствии с положением столбца, что разочаровывает. Может ли кто-нибудь порекомендовать способ смещения ящиков, чтобы они не ложились друг на друга?