Dans la continuité de Hier, je vais vous expliquer les fonctions de matplotlib.
import numpy as np
from pandas import *
from pylab import *
import matplotlib.pyplot as plt
from matplotlib import font_manager
from numpy.random import randn
prop = matplotlib.font_manager.FontProperties(fname="/usr/share/fonts/truetype/fonts-japanese-gothic.ttf")
r = randn(30).cumsum()
#Spécifiez la couleur, le type de ligne, le marqueur
#Noir, ligne brisée, le marqueur est o
plt.plot(r, color='k', linestyle='dashed', marker='o')
plt.show()
plt.savefig("image.png ")
Par défaut, les lignes de pliage sont reliées par une ligne droite. Vous pouvez changer cela avec l'option Drawstyle.
#Valeur RVB explicite
plt.plot(r, color='#ff0000', linestyle='dashed', marker='o', label='dashed')
#Changer le style de dessin
plt.plot(r, color='#0000ff', drawstyle='steps-post', label='steps-post')
#Ajouter une légende
plt.legend(loc='best')
plt.show()
plt.savefig("image2.png ")
plt.xlim () et plt.xticks () renvoient la valeur actuelle lorsqu'ils sont appelés sans arguments. Vous pouvez définir des paramètres en spécifiant une valeur pour cela comme argument.
#Vérifiez la valeur actuelle sans donner d'argument
print( plt.xlim() )
# => (0.0, 30.0)
print( plt.xticks() )
# => (array([ 0., 5., 10., 15., 20., 25., 30.]), <a list of 7 Text xticklabel objects>)
#Définir une nouvelle valeur
plt.xlim([0, 40])
plt.xticks([0,4,8,12,16,20,24,28,32,36,40])
print( plt.ylim() )
# => (-7.0, 3.0)
print( plt.yticks() )
# => (array([-8., -6., -4., -2., 0., 2., 4.]), <a list of 7 Text yticklabel objects>)
plt.ylim([-10, 10])
plt.yticks([-10,-8,-6,-4,-2,0,2,4,6,8,10])
plt.show()
plt.savefig("image3.png ")
Considérez le diagramme de marche aléatoire suivant.
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
r = randn(1000).cumsum()
ax.plot(r)
plt.show()
plt.savefig("image4.png ")
Personnalisons l'échelle et le libellé de ceci. Par exemple, l'axe X est classé par 250, les caractères sont inclinés de 30 degrés et ils sont affichés en japonais.
ax.set_xticks([0, 250, 500, 750, 1000])
ax.set_xticklabels(['A', 'B', 'C', 'D', 'E'], rotation=30, fontsize='small')
ax.set_title('Tester le tracé matplotlib', fontproperties=prop)
ax.set_xlabel('Rang', fontproperties=prop)
plt.show()
plt.savefig("image5.png ")
Un moyen simple d'identifier les données tracées consiste à spécifier une étiquette et à l'afficher dans une légende. Il sera plus facile à comprendre si vous séparez les couleurs et les types de lignes pour chaque donnée.
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
def randn1000():
return randn(1000).cumsum()
ax.plot(randn1000(), 'k', label='one')
ax.plot(randn1000(), 'b--', label='two')
ax.plot(randn1000(), 'r.', label='three')
ax.plot(randn1000(), 'g+', label='four')
ax.plot(randn1000(), 'b*', label='five')
plt.ylim([-100, 100])
ax.legend(loc='best')
plt.show()
plt.savefig("image6.png ")
Vous pouvez spécifier les options de fichier image avec plt.savefig ().
argument | La description |
---|---|
fname | La chaîne de caractères contenant le chemin du fichier, l'objet de fichier Python et le format sont automatiquement déterminés à partir de l'extension. |
dpi | Le nombre de points par pouce et la résolution de la figure. La valeur par défaut est 100. |
facecolor,edgecolor | Couleur d'arrière-plan en dehors du sous-tracé. La valeur par défaut est w(blanc) 。 |
format | Lorsque vous souhaitez spécifier explicitement le format de fichier. png,pdf etc. |
bbox_inches | Spécifiez la pièce à enregistrer dans la figure. Spécifier serré supprime la zone vide autour de la figure. |
Cette fois, les pandas ne sont pas encore apparus, jusqu'à présent, nous ne parlons que de matplotlib. À partir de la prochaine fois, je tracerai en combinaison avec des pandas.
Notes d'utilisation de Matplotlib http://www.geocities.jp/showa_yojyo/note/python-matplotlib.html
Introduction à l'analyse de données avec le traitement des données Python avec NumPy et pandas http://www.oreilly.co.jp/books/9784873116556/
Recommended Posts