Comment puis-je afficher des lignes de quadrillage espacées de façon logarithmique à toutes les tiques sur un graphe log-log en utilisant Matplotlib?
j'essaie de tracer un graphe logarithmique qui montre des lignes de grille espacées logarithmique à toutes les tiques que vous voyez le long du côté inférieur et gauche de la parcelle. J'ai été en mesure de montrer quadrillage à l'aide de matplotlib.pyplot.grid(True)
, mais ceci montre seulement les lignes de réseau pour moi à la puissance de 10 intervalles. Ainsi, à titre d'exemple, voici ce que je suis actuellement:
je voudrais vraiment quelque chose avec des lignes de grille ressemblant plus à ceci, où le le quadrillage ne sont pas régulièrement espacés:
Comment puis-je réaliser cela dans Matplotlib?
2 réponses
en gros, vous avez juste besoin de mettre le paramètre which="both"
dans la commande grid pour qu'elle devienne:
matplotlib.pyplot.grid(True, which="both")
les autres options pour lesquelles sont 'minor' et' major ' qui sont les tiques majeures (qui sont indiquées dans votre graphique) et les tiques mineures qui vous manquent. Si vous voulez des lignes solides, vous pouvez utiliser ls="-"
comme paramètre grid()
.
voici un exemple pour kicks:
import numpy as np
from matplotlib import pyplot as plt
x = np.arange(0,100,.5)
y = 2*x**3
plt.loglog(x,y)
plt.grid(True,which="both",ls="-")
plt.show()
qui génère:
plt.grid(True,which="majorminor",ls="-", color='0.65')
fonctionne pour moi.