Comment créer un graphique comme celui-ci avec matplotlib.
Tout d'abord, importez matplotlib avec le nom plt. Les versions utilisées sont Python 3.5 et matplot lib 1.5.3. Cela devrait fonctionner avec matplotlib 2.0.
Importer matplotlib
import matplotlib.pyplot as plt
Terrain pour le moment
plt.plot([0,10,20,30,40,50], [10,20,30,5,25,30])
plt.show()
Un graphique avec des bordures en haut, en bas, à gauche et à droite, qui est la conception par défaut de matplotlib, est dessiné.
Vous pouvez manipuler la bordure en appelant spines
depuis plt.gca ()
. Vous pouvez utiliser les bordures correspondantes avec droite '',
gauche '', haut '' et
bas ''. Vous pouvez spécifier la bordure que vous souhaitez utiliser et effacer la bordure avec set_visible (False)
. Cependant, bien que la frontière ait disparu, l'échelle n'a pas disparu.
Effacer les bordures droite et supérieure
plt.plot([0,10,20,30,40,50], [10,20,30,5,25,30])
plt.gca().spines['right'].set_visible(False)
plt.gca().spines['top'].set_visible(False)
plt.show()
De même, à partir de plt.gca ()
, seule l'échelle spécifiée par yaxis.set_ticks_position ()
est affichée. Cette fois, je souhaite conserver les échelles gauche et inférieure, alors spécifiez gauche '' et
bas ''.
Désactivez les échelles droite et supérieure
plt.plot([0,10,20,30,40,50], [10,20,30,5,25,30])
plt.gca().spines['right'].set_visible(False)
plt.gca().spines['top'].set_visible(False)
plt.gca().yaxis.set_ticks_position('left')
plt.gca().xaxis.set_ticks_position('bottom')
plt.show()
Vous pouvez définir un graphique sans bordure comme graphique par défaut en jouant avec matplotlibrc. Pour mac, ouvrez le fichier de configuration ~ / .matplotlib / matplotlibrc. Si vous avez installé Python avec Homebrew, il se trouve dans /usr/local/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc.
Puisqu'il existe une telle partie dans matplotlibrc, supprimez # et remplacez True par False.
# axes.spines.left : True # display axis spines
# axes.spines.bottom : True
# axes.spines.top : True
# axes.spines.right : True
Cette fois, je veux effacer les bordures supérieure et droite, supprimez donc le # dans .top et .right et remplacez True par False.
# axes.spines.left : True # display axis spines
# axes.spines.bottom : True
axes.spines.top : False
axes.spines.right : False
Cela produira un graphique avec les bordures droite et supérieure supprimées par défaut.
Recommended Posts