Я хочу изменить цвет присущи рефлективный, вербальный в соответствии с тем, что они представляют, это сгруппированы парами, поэтому мой вопрос:Изменение цвета в boxplot, когда его парный
Как я могу изменить цвет ящики, когда они спарены? Учитывая, что первый квадрат каждой пары должен быть синим, а второй - красным.
Это код, извините, если это грязно:
def obtenerBoxplotsAnuales(self, directorioEntrada, directorioSalida):
meses = ["Enero","Febrero","Marzo","Abril","Mayo","Junio", "Julio", "Agosto","Septie.","Octubre","Noviem.","Diciem."]
ciudades = ["CO","CR"]
anios = ["2011", "2012", "2013"]
boxPlotMensual = []
fig = plt.figure()
fig.set_size_inches(14.3, 9)
ax = plt.axes()
plt.hold(True)
for anio in anios:
boxPlotAnual = []
i=0
ticks = []
for mes in range(len(meses)):
data1 = getSomeData()
data2 = getSomeData()
data = [ [int(float(data1[2])), int(float(data1[0])), int(float(data1[1]))],
[int(float(data2[2])), int(float(data2[0])), int(float(data2[1]))] ]
plt.boxplot(data, positions=[i,i+1], widths=0.5)
ticks.append(i+0.5)
i=i+2
hB, = plt.plot([1,1],'b-')
hR, = plt.plot([1,1],'r-')
plt.legend((hB, hR),('Caleta', 'Comodoro'))
hB.set_visible(False)
hR.set_visible(False)
ax.set_xticklabels(meses)
ax.set_xticks(ticks)
plt.savefig(directorioSalida+"/asdasd"+str(anio)+".ps", orientation='landscape', papertype='A4')
Я прочитал, что решение связано с тем, что plt.boxplot(...)
возвращает вид объекта dict, который содержит список строк, созданных так, чтобы способ изменения цвета каждого boxplot был бы доступом к индексам? Как в этом случае?
И, кстати, я получаю 23 ящика, потому что, по-видимому, изображение вырезано, кто-нибудь знает, как это решить? – Hernan