Как установить свойства сетки pyplot - PullRequest
1 голос
/ 17 июня 2020

Я не уверен, как это сформулировать, но как мне установить сетку в matplotlib.pyplot так, чтобы она отображалась через каждые 'n' x. Прямо сейчас значение этого 'n' по умолчанию равно 2, как можно увидеть здесь: pyplot_grid

Но я хочу, чтобы сетка отображалась в x = 0, x = 1, x = 2 ... et c., И я хочу, чтобы он отображался в y = 0, y = 1, y = 2 ... et c.

Ниже мой код для создания этого графика .

x_values = [1,2,3]
y_values = [1,4,9]

plt.plot(x_values,y_values,'g^')
plt.grid(color='black', linestyle="dotted", linewidth=1)
plt.xlabel("x")
plt.xlim(0.0, 12)
plt.ylabel("y")
plt.ylim(0.0, 12)
plt.show()

Ответы [ 3 ]

0 голосов
/ 17 июня 2020

Вы можете использовать класс MultipleLocator и передать его set_major_locator или set_minor_locator, чтобы указать расстояние между делениями сетки:

import matplotlib.pyplot as plt
from matplotlib.ticker import MultipleLocator

x_values = [1,2,3]
y_values = [1,4,9]

plt.plot(x_values,y_values,'g^')
plt.grid(color='black', linestyle="dotted", linewidth=1)

plt.gca().xaxis.set_major_locator(MultipleLocator(1))
plt.gca().yaxis.set_major_locator(MultipleLocator(1))

plt.xlabel("x")
plt.xlim(0.0, 12)
plt.ylabel("y")
plt.ylim(0.0, 12)
plt.show()

Таким образом, вам не нужно указывать вручную итерация указанных c позиций, в которых должны быть галочки. Вы просто говорите, что они должны быть 1 удаленной квартирой, и все.

Вот результат предыдущего кода:

enter image description here

Ссылка: Основные и второстепенные тики на сайте MatPlotLib

0 голосов
/ 17 июня 2020

Есть несколько способов контролировать «галочки» сетки, одно простое решение - использовать plt.xticks (np.arange (12)) и plt.yticks (np.arange (12)), если вы хотите, чтобы ваш отметки сетки от [0..12].

0 голосов
/ 17 июня 2020

сетка основана на основных тиках, поэтому вы хотите изменить свои основные тики

# setting the ticks
plt.xticks(np.arange(12))
plt.yticks(np.arange(12))
plt.show()

Вывод:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...