[Python] matplotlib: Formatez le diagramme de votre mémoire

Voici un résumé des commandes utilisées pour créer des diagrammes pour les articles scientifiques avec le pyplot de matplotlib. Je l'ai utilisé principalement comme diagramme pour des documents physiques tels que des critiques physiques, mais il peut probablement être utilisé dans d'autres domaines également. En supposant un article à deux colonnes La largeur de la figure est de 8 cm pour une colonne et de 16 cm pour deux colonnes.

Importation de module

import matplotlib.pyplot as plt

J'avais l'habitude d'importer pylab, mais pylab semble prendre certaines des fonctions de numpy et matplotlib. Ce qui précède est utilisé car numpy est importé séparément.

Paramètres généraux: rcParams

Vous pouvez utiliser rcParams dans votre code pour modifier les paramètres de la figure en bloc sans avoir à modifier chaque figure.

plt.rcParams['font.family'] ='sans-serif'#Police à utiliser
plt.rcParams['xtick.direction'] = 'in'#ligne d'échelle de l'axe des x orientée vers l'intérieur('in')Ou vers l'extérieur('out')Ou bidirectionnel('inout')
plt.rcParams['ytick.direction'] = 'in'#La ligne d'échelle de l'axe y est tournée vers l'intérieur('in')Ou vers l'extérieur('out')Ou bidirectionnel('inout')
plt.rcParams['xtick.major.width'] = 1.0#Largeur de ligne de la ligne d'échelle principale de l'axe x
plt.rcParams['ytick.major.width'] = 1.0#Largeur de ligne de la ligne d'échelle principale de l'axe y
plt.rcParams['font.size'] = 8 #Taille de police
plt.rcParams['axes.linewidth'] = 1.0#Largeur de ligne de bord de largeur de ligne de l'axe. Épaisseur du boîtier

La police "sans empattement" est un caractère sans "décoration de barbe", et les caractères habituellement utilisés pour les figures sur papier sont souvent sans décoration de barbe. La taille de la police est de 8 car elle a à peu près la même taille que la description de la légende.

Paramètres pour chaque figure

plt.figure(figsize=(3.14,3.14))

La taille de la figure est spécifiée en pouces et les variables sont (largeur, hauteur). 3,14 pouces est d'environ 8 cm. Il est bon d'ajuster la hauteur sans changer la largeur.

--Spécifiez le nombre de chiffres de la valeur de l'axe:

plt.gca().yaxis.set_major_formatter(plt.FormatStrFormatter('%.3f'))#Affichage de 3 chiffres après le point décimal de l'axe y

--Exprimez les nombres sur l'axe sans utiliser de décalages (tels que + 1,05e9)

plt.gca().xaxis.get_major_formatter().set_useOffset(False)
plt.gca().yaxis.set_major_locator(ticker.MaxNLocator(integer=True))

--Spécifiez le nombre d'échelles d'axe:

plt.locator_params(axis='y',nbins=6)#axe y, dans les 6 pièces.
plt.gca().yaxis.set_tick_params(which='both', direction='in',bottom=True, top=True, left=True, right=True)

--Utilisez ce qui suit à la fin de la commande dans la figure:

plt.tight_layout()#Les graphiques ne se chevauchent pas et ne correspondent pas à la taille de la figure définie.
plt.savefig('figname.pdf', transparent=True)
plt.savefig('figname.png', transparent=True, dpi=300)

Le format de la figure change en changeant l'extension. En spécifiant transparent, l'arrière-plan devient transparent. dpi est la densité de points de l'image bitmap. Après avoir enregistré la figure, spécifiez-la dans la taille de sortie telle que largeur 8 cm avec TeX ou word et utilisez-la.

-Carte couleur

plt.contour(X, Y, Z, cmap='viridis') #Dessinez des lignes de contour avec la palette de couleurs viridis

Pour la palette de couleurs, nous recommandons viridis, qui est facile à distinguer même pour les personnes ayant une vision des couleurs anormale.

[Mémo] Nous le mettrons à jour de temps en temps.

Les références

Recommended Posts

[Python] matplotlib: Formatez le diagramme de votre mémoire
Code pour vérifier le fonctionnement de Python Matplot lib
[Python 2/3] Analyser la chaîne de format
[python] Comment utiliser Matplotlib, une bibliothèque pour dessiner des graphiques
Voir python pour la première fois
À quoi sert le trait de soulignement Python (_)?
La première étape de Python Matplotlib
Commande pour le répertoire courant Python
Présentation du framework BOT Minette pour Python
[Python] Définissez la plage du graphique avec matplotlib
Utiliser DeepL avec python (pour la traduction d'articles)
Ajouter un intervalle de confiance de 95% des deux côtés pour la figure avec Python / Matplotlib
Lancez le bot Discord Python pendant 24 heures.
MongoDB avec Python pour la première fois
Pandas du débutant, par le débutant, pour le débutant [Python]
La voie de la mise à jour de Splunkbase avec votre propre application Splunk compatible avec Python v2 / v3
Cliquez sur le diagramme python / matplotlib pour obtenir des valeurs de coordonnées ou des valeurs d'entrée au clavier
CERTIFICATE_VERIFY_FAILED dans Python 3.6, le programme d'installation officiel de macOS
[Python] J'ai essayé de remplacer le nom de la fonction par le nom de la fonction
L'histoire selon laquelle le coût d'apprentissage de Python est faible
Création d'un wrapper Python pour l'API Qiita
vprof - J'ai essayé d'utiliser le profileur pour Python
[Python] Comment changer le format de la date (format d'affichage)
Wagtail est le meilleur CMS pour Python! (Peut-être)
Faire un histogramme pour le moment (matplotlib)
Utilisez Logger avec Python pour le moment
J'ai essayé la programmation python pour la première fois.
Conseils pour accéder à l'API ATND avec Python
Python: préparez un sérialiseur pour l'instance de classe:
[Python] J'ai cherché le plus long Pokémon Shiritori
Traitement d'image? L'histoire du démarrage de Python pour
Remarque pour le formatage des nombres avec la fonction de format python
N'utilisez pas readlines () dans votre instruction Python for!
[Python] Prédire le loyer approprié pour les appartements
Appeler Polly à partir du kit SDK AWS pour Python
Format de séquence d'échappement de chaîne à Unicode pour Python
python: utilisez votre propre classe pour numpy ndarray
30/10/2016 else pour Python3> pour:
python [pour moi]
Format de chaîne Python
Obtenez AccessToken pour le compte de service avec le SDK Firebase Admin Python
Les bases de #Python (#matplotlib)
Mon matplotlib (Python)
Format de chaîne Python
format en python
Créez votre propre Big Data en Python pour validation
Ce que je suis entré dans Python pour la première fois
Faire de l'application Python CUI une application pour Mac
J'ai essayé Python sur Mac pour la première fois.
Exécutez avec CentOS7 + Apache2.4 + Python3.6 pour le moment
[Python] Mesure et affiche le temps nécessaire au traitement
Étapes pour installer le dernier Python sur votre Mac
[Python] 2 Créez une carte risque-rendement pour votre portefeuille d'actifs
HoloViews peut devenir la norme pour les outils de visualisation Python
J'ai essayé python pour la première fois avec heroku
Obtenez des résultats au format dict avec Python psycopg2
Utilisez CASA Toolkit dans votre propre environnement Python
Informations pour contrôler les moteurs avec Python sur RaspberryPi
Electron est la meilleure solution pour le développement multi-plateforme de Python