Метки Matplotlib перекрываются со стандартными - PullRequest
0 голосов
/ 04 июля 2019

Я пытаюсь построить с ограниченным количеством тиков по оси X. Я следовал этому методу . И это почти работает, однако, у меня есть шкала от 0,1 до 1, и я все еще хотел бы сделать аналогичную операцию: показывает только [0.2, 0.3, 0.6] в скалярном формате. Участок ограничен участком журнала. И я получил это:

overlapping

Очевидно, мы видим перекрытие в [0.2, 0.3, 0.6] и никакого перекрытия для 0.4. Как я могу удалить оригинальный набор символов? Моя программа прилагается здесь:

import matplotlib
from matplotlib import pyplot as plt
fig = plt.gcf()
fig.set_size_inches(12, 8)
ax1 = plt.gca()
ax1.plot([0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7], [1,2,3, 4, 5, 6, 7])
ax1.set_xscale('log')
ax1.set_yscale('log')

ax1.set_xticks([0.2, 0.3, 0.6])
ax1.get_xaxis().set_major_formatter(matplotlib.ticker.ScalarFormatter())
plt.show()

1 Ответ

0 голосов
/ 04 июля 2019

Видимо, 0.4 это второстепенные тики:

fig, ax1 = plt.subplots(figsize=(12,8))
ax1.plot([0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7], [1,2,3, 4, 5, 6, 7])
ax1.set_xscale('log')
ax1.set_yscale('log')

ax1.set_xticks([0.2, 0.3, 0.6], minor=False)
ax1.set_xticklabels([],minor=True) # turn minor label off
ax1.get_xaxis().set_major_formatter(matplotlib.ticker.ScalarFormatter())
plt.show()

Вывод:

enter image description here

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