Cet article présente quelques petits conseils qui ne sont (probablement) pas écrits dans les articles existants. Bien que la plupart d'entre eux soient devenus l'utilisation de matplotlib, le fait que les personnes qui n'ont jamais touché matplotlib essaient soudainement d'utiliser Seaborn est expliqué sur la base de la connaissance de matplotlib. J'écrirai qu'il sera utile dans le rôle de complément.
C'est une fonction du côté matplotlib, et elle est affichée lorsque plt.show () est appelé après le dessin.
showyourplot.py
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns # cf. https://www.reddit.com/r/learnpython/comments/5oscmr/why_is_seaborn_commonly_imported_as_sns/
Z = np.random.random(1000)
sns.distplot(Z, kde=False) # kdf stands for Kernel Density Estimation, which is disabled here.
plt.show()
Une fenêtre apparaîtra comme ceci et vous pouvez voir le graphique. Vous pouvez également l'enregistrer manuellement à partir d'ici.
Ceci est également sauvegardé par la fonction de matplotlib. Ajoutez-le à la fin du code ci-dessus.
plt.savefig("seaborntest.png ") # save as png file
Un fichier comme celui-ci a été enregistré avec le nom de fichier seaborntest.png.
plt.savefig("seaborntest.pdf") # output format detected automatically
Vous pouvez l'enregistrer au format pdf en changeant simplement l'extension. Les données vectorielles étant conservées, vous pouvez les modifier ultérieurement avec Adobe Illustrator, etc. si nécessaire.
Même dans l'exemple ci-dessus, il y a deux chevauchements, mais surtout lors du dessin et de l'enregistrement d'un grand nombre de graphiques, il est nécessaire d'effacer le contenu dessiné avant chaque fois. Pour ce faire, appelez plt.clf ()
.
savemanyplots.py
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
for i in range(10):
plt.clf() # flush previous drawings
sns.set_context('poster') # use large fonts
Z = np.random.random(1000)
sns.distplot(Z, kde=False)
plt.savefig("seaborntest{0}.png ".format(i),dpi=300) # output high-resolution png
Nous avons pu générer 10 sorties avec des contenus différents. De plus, ici, la taille de la police est augmentée avec set_context ('poster')
, et un graphique haute définition est généré avec'dpi = 300 'avec l'option savefig.
En fonction de l'application, il peut arriver que vous souhaitiez utiliser des caractères obliques, des exposants et des indices. Vous trouverez ci-dessous un exemple de falsification des données d'iris. Si vous l'écrivez en notation TeX comme ceci, il sera reflété tel quel. À propos, l'étiquette de l'axe des x est effacée et l'étiquette de l'axe des y est modifiée. Nous avons également changé la palette de couleurs.
tweakfonts.py
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import seaborn as sns
iris = sns.load_dataset('iris')
iris = iris.replace('setosa', '$sp. \mathrm{str.}$') # italic and roman
iris = iris.replace('versicolor', '$\mathbf{amp^R}$') # bold with superstring
iris = iris.replace('virginica', '$mutant_1$') # italic with substring
sns.set_context('poster')
fig = sns.barplot(x='species',y='sepal_length',data=iris,palette='gray')
fig.set_xlabel('') # no label on the categorical axis
fig.set_ylabel("Survival Rate") # refine the y-axis label
plt.savefig('survival.png')
Certaines personnes ont déjà expliqué comment utiliser Seaborn en général, veuillez donc vous y référer. http://qiita.com/hik0107/items/3dc541158fceb3156ee0 http://qiita.com/koji_france/items/47fbb89b0922251a20bb http://qiita.com/koji_france/items/87c5d4d08fdc3ad0e9b4 https://nkmk.github.io/blog/python-seaborn-matplotlib/
Recommended Posts