Un mémo lors du traçage de la composition de la séquence d'acides aminés (dimension 20xN).
La création d'un graphique empilé est assez simple. Vous pouvez spécifier bottom = hoge
dans bar
.
Cependant, quand il y avait beaucoup de choses à venir, il était assez difficile d'ajuster l'emplacement de la légende. Ajustez la largeur du tracé avec get_position
et set_position
→ Lorsque vous utilisez legend
, ajustez la position avec bbox_to_anchor
.
référence: http://geetduggal.wordpress.com/2011/08/22/grabbing-individual-colors-from-color-maps-in-matplotlib/ http://stackoverflow.com/questions/4700614/how-to-put-the-legend-out-of-the-plot http://matplotlib.org/users/legend_guide.html#plotting-guide-legend
plot_test.py
amino_count = ... # something;Ici 20x23 dimensions np.array
accent = get_cmap('accent') #Obtenez une palette de couleurs
figsize(10, 8) #Avec la taille de la figure
rcParams['font.size'] = 14 #Rendre les lettres un peu plus grandes
total = zeros(23) #Enregistrer la somme pour l'empilement
ax = subplot(111)
for i in xrange(20): #Pour chacun des 20 acides aminés
c = accent(i / 20.0) #colormap renvoie la valeur RGBA correspondante si vous entrez une valeur comprise entre 0 et 1.
if i == 0:
ax.bar(arange(23), amino_count[i], color=c, label=aa[i])
else:
ax.bar(arange(23), amino_count[i], color=c, bottom=total, label=aa[i])
#Vous pouvez définir la limite inférieure de la barre en spécifiant le bas.
total += tmd_count[i]
box = ax.get_position()
ax.set_position([box.x0, box.y0, box.width * 0.80, box.height])
#Définissez la largeur du tracé sur 80%.
h,l = ax.get_legend_handles_labels()
ax.legend(h[::-1], l[::-1], bbox_to_anchor=(1.25, 1.05))
# get_legend_handles_labels()Pour obtenir la poignée et l'étiquette de la légende.
#En utilisant cela, la légende est affichée dans l'ordre inverse.
#Aussi bbox_to_La position de la légende est ajustée à l'aide de l'ancre.
xlabel('Position from the N-terminal side of TMD', fontsize=16)
ylabel('Count', fontsize=16)
Recommended Posts