Mémo de visualisation par Python

Objectif

Lisez et analysez les fichiers binaires générés par Fortran 90 avec Python. Décrivez les liens et les mises en garde qui ont été utiles pour le développement. Continuera à être édité séquentiellement.

La personne qui écrit

Habituellement Fortran 90 et IDL (Interactive Data Language). Python n'est pas très familier. Migration vers Python au lieu de l'IDL sous licence.

Politique de développement personnel

――Pylab est difficile à trouver dans la recherche Google. Importez directement numpy et matplotlib. --from [package] import * n'est pas fait autant que possible.

environnement

Python 3.6.0 |Anacoda 4.3.0 on OS X El Capitan

Python en général

Règles de dénomination

Suivez PEP8. Comprendre [les normes de codage Python] PEP8 Il est recommandé que le nom de la variable / le nom de la fonction soit snake_case. Fortran est insensible à la casse, donc ça a l'air bien quand vous avez le même type de convention de dénomination. Résumé des mots anglais souvent utilisés dans la programmation [Mis à jour de temps en temps] Les étrangers parlent: comment nommer les classes et les méthodes en anglais Informations de référence pour une dénomination de méthode réussie

Informations sur le module

Comment afficher des versions telles que numpy et scipy Astuces Python: je souhaite connaître l'emplacement des modules de bibliothèque

variable

[Passer par valeur et passer par référence en Python] (https://python.dogrow.net/?p=274) [Passer par valeur, passer par référence, passer par référence] (https://qiita.com/ur_kinsk/items/949dabe975bdc1affb82) Est-il acceptable que la valeur par défaut transmette la valeur de référence? [Determine if variable is defined in Python] (https://stackoverflow.com/questions/1592565/determine-if-variable-is-defined-in-python) [Quatre règles - Numérique - Introduction à Python] (http://www.pythonweb.jp/tutorial/num/index2.html)

boucle

Évitez les boucles multiples. itertools.product Évitez les boucles multiples en Python

Appel système

17.5. Subprocess - Gestion des sous-processus

Trier

[Trier COMMENT] (https://docs.python.jp/3/howto/sorting.html) [Obtenir l'index du tableau après le tri avec numpy] (https://python.dogrow.net/?p=274)

Entrée sortie

Les fichiers de sortie Fortran sont des sorties non formatées (données) et des sorties formatées (paramètres, etc.).

Sortie non formatée

Le scipy.io.FortranFile était utile lors de la lecture de la sortie non formatée Fortran. Le contenu est composé de numpy.fromfile etc. scipy.io.FortranFile Cependant, comme indiqué officiellement, sortie avec accès direct ou flux dans Fortran Vous n'avez pas à vous soucier des enders si vous le lisez avec numpy.fromfile.

Sortie formatée

Lisez normalement. Utilisez str.split, str.splitlines, etc. Faites attention au caractère de saut de ligne à la fin de la ligne. [4.7. Type de séquence de texte - str] (http://docs.python.jp/3.6/library/stdtypes.html#text-sequence-type-str)

NumPy

Spécification des éléments de tableau

Lors de la spécification dans la plage, il est différent de IDL et cela semble être faux.

import numpy as np
np.arange(0,10)
# array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
np.arange(0,10)[3]
# 3
np.arange(0,10)[0:3]
# array([0, 1, 2])Lorsqu'il est spécifié dans une plage, l'élément le plus à droite n'est pas inclus.

Général

Organiser la conversion de forme Remodeler semble bon.

Routine relative à la génération de tableaux

Liste des fonctions liées à l'index du tableau

Liste des fonctions mathématiques

Liste des fonctions liées aux opérations logiques

Calcul de la différence

Puisqu'il s'agit essentiellement d'une analyse, elle est mise en œuvre docilement si elle n'est pas trop lente. 2. Astuces pour le tableau Numpy numpy.roll

Si vous souhaitez implémenter diverses choses en Python, accélérez Numba, etc. Numba

matplotlib Fondamentalement, pyplot suffit.

Didacticiel

Pyplot tutorial

Introduction à matplotlib

Anatomy of Matplotlib -- tutorial developed for the SciPy conference Cela semble être le plus compréhensible. Je veux le lire correctement.

Paramètres généraux: rcParams

L'équivalent de la variable système d'IDL (! P. ~,! X. ~, Etc.) est comme rcParams. Comme l'équivalent du fichier de démarrage (.idl_startup), matplotlibrc doit être défini. L'emplacement est ci-dessous.

import matplotlib as mpl
mpl.matplotlib_fname()

Pour le moment, définissez les paramètres suivants.

backend      : TkAgg  #La fenêtre de dessin de matplotlib est traitée comme une application distincte.
interactive  : True  # show()Affichez le tracé sans écrire chacun d'eux.
xtick.top            : True  # draw ticks on the top side
ytick.right          : True  # draw ticks on the right side
xtick.direction      : in    # direction: in, out, or inout
ytick.direction      : in    # direction: in, out, or inout
xtick.minor.visible  : True  # visibility of minor ticks on x-axis
ytick.minor.visible  : True  # visibility of minor ticks on y-axis

Lors de la création d'un diagramme en tant que travail par lots, entrez les paramètres suivants.

import matplotlib.pyplot as plt
plt.rcParams['interactive'] = False

Les rcParams modifiés peuvent être retournés avec rc_file_defaults ().

import matplotlib as mpl
mpl.rc_file_defaults()

rcParams peut également être retourné à la valeur par défaut avec matplotlib.rcdefaults (), Notez que cela renverra également les paramètres modifiés avec matplotlibrc. rc_file_defaults () fera appliquer matplotlibrc à partir de la valeur par défaut.

Apparence générale

Il semble bon d'écrire les paramètres que vous souhaitez toujours utiliser dans matplotlibrc.

Mettre en forme le graphique de matplotlib

matplotlib: Formatez la figure pour l'article

Tracez des graphiques en noir et blanc pour les papiers avec matplotlib ou pylab

L'apparence du graphique peut également être décidée sur la feuille de style.

Changements dans matplotlib 2.0 Il y a beaucoup de chiffres et c'est utile.

4 techniques de création de diagrammes pour papiers et supports de présentation avec matplotlib Je ne l'utilise pas beaucoup, mais c'est un graphique à barres et une légende.

Données 1D

Essayez tous les marqueurs pouvant être utilisés avec matplotlib-python

[How to do a scatter plot with empty circles in Python?] (https://stackoverflow.com/questions/4143502/how-to-do-a-scatter-plot-with-empty-circles-in-python)

Affichage de l'échelle du journal / affichage de la grille

Données 2D

pcolor est lent à mesure que les données augmentent. Utilisez un maillage pcolor.

matplotlib.pyplot.pcolormesh

matplotlib.pyplot.colorbar

Tracé des courbes de niveau et autres choses avec matplotlib

Il semble y avoir quelque chose qui s'appelle pcolorfast.

Couleur

Colormap Reference Colormap Normalization

Police de caractère

How to change fonts in matplotlib (python)?

Placement

Augmentez la taille de la police du graphique avec matplotlib Tight Layout guide [Que faire si vous obtenez une erreur tight_layout sous Mac OS X](http://myenigma.hatenablog.com/entry/2015/10/09/223629 # Que faire si vous obtenez une erreur tight_layout sous Mac-OSX] )

production

matplotlib.figure.Figure.savefig Enregistrer des images haute résolution de Matplotlib

fenêtre

How do I close all pyplot windows (including ones from previous script executions)?

Différences entre pyplot, figure et axes

stack overflow: Understanding matplotlib: plt, figure, ax(arr)? AnatomyOfMatplotlib-Part1-Figures_Subplots_and_layouts.ipynb Description officielle du rôle de Pyplot et Axes Connaissance de base de matplotlib que je voulais connaître tôt, ou l'histoire d'un artiste qui peut ajuster l'apparence

Apparemment, la figure gère la fenêtre et les axes gèrent chaque tracé de la fenêtre. pyplot semble être un wrapper qui le rend facile à utiliser comme un script.

Recommended Posts

Mémo de visualisation par Python
Mémo Python
mémo python
Mémo Python
mémo python
Mémo Python
Mémo de visualisation par pandas, seaborn
Mémo Python
Mémo d'apprentissage de la planification des sections ~ par python ~
[Python] Mémo sur le dictionnaire
mémo débutant python (9.2-10)
mémo débutant python (9.1)
★ Mémo ★ Python Iroha
[Python] Mémo EDA
Mémo opérateur Python 3
[Mon mémo] python
Mémo de métaclasse Python3
[Python] Mémo de fond de carte
Mémo débutant Python (2)
[Python] Mémo Numpy
[Mémo d'apprentissage] Bases de la classe par python
Mémo d'étude Python & Machine Learning ④: Machine Learning par rétro-propagation
Jugement des nombres premiers par Python
Classe Python (mémo d'apprentissage Python ⑦)
installation de python openCV (mémo)
Module Python (mémo d'apprentissage Python ④)
Traitement de la communication par Python
Bibliothèques de visualisation de données Python
[Calcul scientifique / technique par Python] histogramme, visualisation, matplotlib
Mémo du package de test Python
[Python] Mémo sur les fonctions
Divers outils de visualisation Python
mémo d'expression régulière python
Recherche de bisection (python2.7) mémo
[Mon mémo] python -v / python -V
Mémo de type Liste / Dictionnaire Python3
[Mémo] Tri de liste Python3
Astuces Python (mon mémo)
[Python] Mémo sur les erreurs
Mémo de script DynamoDB (Python)
Mémo de base Python - Partie 2
livre de recettes python Memo
Notes de commande de base Python
Mémo du didacticiel Python OpenCV
Réponse de Beamformer par python
Mémo de grammaire de base Python
Mémo de l'API TensorFlow (Python)
Notes sur la création d'un environnement python par les débutants
liens de mémo utiles python
Mémo d'opération de décorateur Python
Mémo de base Python - Partie 1
Élément de mémo Python efficace 3
Visualisation de la logistique avec Python
Mémo Python d'énumération approximative
[Keras] Mémo personnel pour classer les images par dossier [Python]
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer du chapitre 2
Mémo d'apprentissage Python pour l'apprentissage automatique par Chainer chapitres 1 et 2
[Calcul scientifique / technique par Python] Graphique logistique, visualisation, matplotlib
[Calcul scientifique / technique par Python] Graphique de coordonnées polaires, visualisation, matplotlib