Acabei de escrever o código para fazer um gráfico usando o pylab em Python e agora gostaria de sobrepor uma grade de 10x10 ao gráfico de dispersão. Como faço isso?
Meu código atual é o seguinte:
x = numpy.arange(0, 1, 0.05)
y = numpy.power(x, 2)
fig = plt.figure()
ax = fig.gca()
ax.set_xticks(numpy.arange(0, 1, 0.1))
ax.set_yticks(numpy.arange(0, 1., 0.1))
plt.scatter(x, y)
plt.show()
E sua saída é:
O que eu gostaria é a seguinte saída:
EDIT: Adicionado um exemplo, com base na resposta de Andrey Sobolev
python
matplotlib
LiamNeesonFan
fonte
fonte
matplotlibrc
problema, eu tinha o estilo de grade definido como linhas sólidas e isso não funciona mais?mpl.rcParams['grid.linestyle'] = "-"
produz um gráfico com linhas de grade sólidas. Qual é o seugrid.linestyle
?-
. Não sei por que parou de funcionar. Eu investigarei um dia.ax.scatter(x,y)
eax.grid(True)
.Para mostrar uma linha de grade em cada marca, adicione
Por exemplo:
Além disso, convém personalizar o estilo (por exemplo, linha sólida em vez de linha tracejada), adicione:
Por exemplo:
fonte
Usando rcParams, você pode mostrar a grade com muita facilidade da seguinte maneira
Se a grade não estiver aparecendo mesmo depois de alterar esses parâmetros, use
antes de ligar
fonte
A página de exemplos do pylab é uma fonte muito útil. O exemplo relevante para sua pergunta:
http://matplotlib.sourceforge.net/mpl_examples/pylab_examples/scatter_demo2.py http://matplotlib.sourceforge.net/users/screenshots.html#scatter-demo
fonte
Aqui está um pequeno exemplo de como adicionar uma grade matplotlib no Gtk3 com o Python 2 (não funcionando no Python 3):
fonte