удаление научных обозначений из меток осей в matplotlib (логарифмическая шкала)

avatar
Youssef Alaa Etman
1 июля 2021 в 19:50
69
1
0

У меня есть следующий рисунок, и, как вы можете видеть, метки делений по оси Y перекрываются на 3000, 4000 и 5000 из-за научной нотации 3x10^3, 4x10^3 и 5x10^3, хотя я заставляю мои собственные галочки. Мой вопрос в том, как я могу удалить их?

Я пробовал plt.ticklabel_format(style='plain'), но это выдает ошибку: "AttributeError: Этот метод работает только со ScalarFormatter."

# multivariate plot of price by cut and color, for approx. 1 carat diamonds
myticks = [2300, 2600, 3000, 3300, 3600, 4000, 4300, 4600, 5000]
ytick_names = ['{}'.format(tick) for tick in myticks]

diamonds_sub = diamonds[diamonds['carat'].between(0.5, 1.5)]
plt.figure(figsize=(12,5))
sb.pointplot(data=diamonds_sub, x='color', y='price', hue='cut')
plt.yscale('log')
plt.yticks(myticks, ytick_names);

enter image description here

Источник

Ответы (1)

avatar
Youssef Alaa Etman
1 июля 2021 в 20:46
0

Проблема была решена добавлением plt.gca().set_yticklabels([], minor=True)