[PYTHON] (Mac) Comment afficher en japonais avec Matplotlib et Seaborn sur MacOS Sierra

0. Introduction

Ce n'est pas grave, mais c'est mon premier message. Je faisais Knock 100 language processing avec Python3, et quand j'ai essayé d'afficher le graphique avec matplotlib, j'étais à l'agonie de l'affichage japonais. N'oubliez donc pas de prendre note.

1. Conclusion

Sagesse du prédécesseur + *** Supprimer le fichier cache ***

est.

1-1. Sagesse des ancêtres

D'ici [Seaborn] Afficher le japonais (changer la police)

or Vous trouverez ci-dessous la méthode que j'ai essayée (recommandée car elle est nouvelle?). Je pense que cela fonctionnera certainement ici.

1-1 '. Modification des paramètres de police Seaborn depuis l'introduction de la police

Si vous avez terminé le réglage de sagesse de votre prédécesseur, ignorez-le et allez à [1-2. Supprimer le cache](http://qiita.com/kamuiroeru/items/6853f14dc493ec5063f7#1-2- Supprimer le fichier cache).

(1) Présentation de la police

Apportez une police appropriée et installez-la.

J'utiliserai la police IPAex à la suite de mon prédécesseur. Après le téléchargement et la décompression, il devrait y avoir un fichier appelé ipaexg.ttf, alors installons-le tel quel (double-cliquez sur ipaexg.ttf dans le Finder).

(2) Paramètres Seaborn

Recherchez rcmod.py. L'ancêtre python_install_folder/lib/site-package/seabornIl dit que c'est à l'intérieur. Mais dans mon environnement (car il est géré par pyenv) ~/.pyenv/versions/3.5.2/lib/python3.5/site-packages/seaborn C'était en.

Post-scriptum du 25/12/2016: Quand j'ai réintroduit l'environnement avec anaconda, c'était à un niveau plus profond. ~/.pyenv/versions/anaconda3-[versionNum]/lib/python3.5/site-packages/seaborn

Une fois que vous avez trouvé rcmod.py, effectuez deux modifications dans l'éditeur (après l'avoir sauvegardé).

Autour des lignes 81 et 82

def set(context="notebook", style="darkgrid", palette="deep",
        font="sans-serif", font_scale=1, color_codes=False, rc=None):

Vers la ligne 190

"font.family": ["sans-serif"],

de " san-serif " vers `` IPAexGothic "(nouveau nom de police)` Changer en.

Enregistrez et définissez la police seaborn. L'affichage japonais n'est pas encore possible.

(Petite histoire) Et si j'utilise la police TrueType installée à l'origine pour le japonais?

Vous pouvez voir les polices installées depuis Font Book. 例

Regardez l'élément «Famille» dans la vue détaillée. Dans ce cas, il s'agit de «Migu 1P». Spécifiez le nom de l'élément écrit dans cette famille comme nouveau nom de police. Exemple Changement de «san-serif» en «Migu 1P» (nouveau nom de police) «

1-2. Supprimer le fichier cache

Désolé de vous avoir fait attendre. C'est le sujet principal. Pour le dire franchement

fontList.py3k.cache Ou *** Effacez fontList.json! !! !! !! *** ***

c'est tout. Probablement dans `` ~ / .matplotlib / ''. C'est le répertoire où se trouve matplotlibrc. S'il y en a plus d'un, celui qui se trouve directement sous le répertoire personnel doit avoir la priorité.

Supprimons-le rapidement.

cd ~/.matplotlib

Après,

rm -f fontList.py3k.cache
rm -f fontList.json

Maintenant, exécutons matplotlib. Je pense que cela prendra plus de temps que d'habitude car le fichier cache sera recréé ... comment c'est? Ça s'est bien passé?

** PostScript 05/02/2018 ** Avec le récent matplotlib (version 2.1.0), FontList.py3k.cache n'a pas été trouvé et a été reflété par la suppression de fontList.json.


Pourquoi vous devez supprimer le cache

(Puisque c'est mon propre raisonnement, il peut contenir des erreurs, etc.)

matplotlib semble lire quel type de fichier de police se trouve dans le fichier cache au premier démarrage, puis le lire.

Source Problème GitHub officiel de matplotlib Won't use a font although it can be found by the FontManager #3590

you'll need to remove the fontList.cache file everytime you want matplotlib to discover new fonts.

Parce qu'il y a une réponse

Il semble que chaque fois que vous modifiez les paramètres de police **, vous devez changer le fichier cache **.

Recommended Posts

(Mac) Comment afficher en japonais avec Matplotlib et Seaborn sur MacOS Sierra
Comment afficher le japonais python avec lolipop
Comment afficher des images en continu avec matplotlib Memo
Affichage japonais de matplotlib, seaborn
Comment exécuter Jupyter et Spark sur Mac avec des paramètres minimaux
Paramètres japonais pour les axes matplotlib et Seaborn
Comment titrer plusieurs figures avec matplotlib
Comment supprimer l'erreur d'affichage dans matplotlib
Comment utiliser le japonais avec le tracé NLTK
Afficher le graphique japonais avec VS Code + matplotlib
Comment entrer le japonais avec les malédictions Python
Comment installer cx_Oracle sur macOS Sierra
[Python] Comment spécifier la position d'affichage de la fenêtre et la taille de matplotlib
Comment démarrer le projet Python en 2020 (Windows WSL et Mac commun)
Comment désactiver l'affichage de la valeur d'échelle en quittant la grille avec matplotlib
Je souhaite afficher plusieurs images avec matplotlib.
[Python] Comment dessiner plusieurs graphiques avec Matplotlib
Enveloppez et affichez bien les phrases japonaises avec pyglet
Comment basculer entre les shells Linux et Mac
Japonais avec matplotlib
[Python] Comment gérer les caractères japonais avec openCV
[Linux] Comment afficher l'utilisation du processeur avec la commande ps, afficher l'en-tête et ne pas afficher le processus grep
[Python] Comment dessiner un graphique linéaire avec Matplotlib
Comment partager des dossiers avec Docker et Windows avec tensorflow
Il est trop difficile d'afficher le japonais avec le python3 de Vim.
Comment extraire des valeurs Null et des valeurs non Null avec des pandas
Comment boucler et lire une vidéo gif avec openCV
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
[Comment!] Apprenez et jouez à Super Mario avec Tensorflow !!
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
Comment utiliser Matplotlib
[Super facile! ] Comment afficher le contenu des dictionnaires et des listes incluant le japonais en Python
Comment afficher le texte et le texte de survol qui peuvent être exécutés en cliquant avec le plug-in Minecraft
[Dessin graphique] J'ai essayé d'écrire un graphique à barres multi-séries avec matplotlib et seaborn
Comment insérer un processus spécifique au début et à la fin de l'araignée avec la tremblante
[Python] Lisez le fichier csv et affichez la figure avec matplotlib
[Python] Comment jouer avec les variables de classe avec décorateur et métaclasse
[Ev3dev] Comment afficher une image bmp sur un écran LCD avec python
Comment ajouter de nouvelles données (lignes droites et tracés) à l'aide de matplotlib
Comment afficher une liste des versions installables avec pyenv
Comment gratter en quelques secondes avec le sélénium de Python
Comment créer une trame de données et jouer avec des éléments avec des pandas
Comment installer Theano sur Mac OS X avec homebrew
Comment se connecter à AtCoder avec Python et soumettre automatiquement
J'ai été surpris de savoir comment enregistrer des objets avec python, qui est léger et très économe en énergie.
Étapes rapides pour créer un environnement d'apprentissage automatique à l'aide de Jupyter Notebook sur macOS Sierra avec anaconda
[Seaborn] Afficher le japonais (changer la police)
Comment mettre à jour avec SQLAlchemy?
Comment lancer avec Theano
Comment modifier avec SQLAlchemy?
Comment séparer les chaînes avec ','
Comment faire RDP sur Fedora31
Comment supprimer avec SQLAlchemy?
Comment définir un raccourci pour basculer entre pleine largeur et demi-largeur dans IBus
Comment ne pas échapper au japonais en traitant avec JSON en Python
Comment importer des fichiers CSV et TSV dans SQLite avec Python
Comment gérer les erreurs lors de l'installation de whitenoise et du déploiement sur Heroku
IME On / Off est affiché par LED en coopération avec Python et Arduino