Właśnie skończyłem pisać kod, aby wykonać wykres przy użyciu pylab w Pythonie, a teraz chciałbym nałożyć siatkę 10x10 na wykres punktowy . W jaki sposób mogę to zrobić?
Mój obecny kod jest następujący:
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()
A jego wyjście to:
Chciałbym otrzymać następujący wynik:
EDYCJA: Dodano przykład na podstawie odpowiedzi Andrieja Sobolewa
python
matplotlib
LiamNeesonFan
źródło
źródło
matplotlibrc
problem, miałem styl siatki zdefiniowany jako linie ciągłe i to już nie działa?mpl.rcParams['grid.linestyle'] = "-"
daje wykres z ciągłymi liniami siatki. Jaki jest Twójgrid.linestyle
?-
. Nie wiem, dlaczego przestało działać. Pewnego dnia zbadam sprawę.ax.scatter(x,y)
iax.grid(True)
.Aby wyświetlić linię siatki na każdym zaznaczeniu, dodaj
Na przykład:
Ponadto możesz dostosować stylizację (np. Linia ciągła zamiast linii przerywanej), dodaj:
Na przykład:
źródło
Używając rcParams możesz bardzo łatwo wyświetlić siatkę w następujący sposób
Jeśli siatka nie wyświetla się nawet po zmianie tych parametrów, użyj
zanim zadzwonisz
źródło
Strona z przykładami w Pylab jest bardzo przydatnym źródłem. Przykład odpowiedni dla twojego pytania:
http://matplotlib.sourceforge.net/mpl_examples/pylab_examples/scatter_demo2.py http://matplotlib.sourceforge.net/users/screenshots.html#scatter-demo
źródło
Oto mały przykład, jak dodać siatkę matplotlib w Gtk3 z Pythonem 2 (nie działa w Pythonie 3):
źródło