«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как устранить относительный сдвиг в тиковых метках Matplotlib для больших чисел?

Как устранить относительный сдвиг в тиковых метках Matplotlib для больших чисел?

Опубликовано 7 ноября 2024 г.
Просматривать:495

How to Eliminate Relative Shift in Matplotlib\'s Tick Labels for Large Numbers?

Удаление относительного смещения в оси Matplotlib

Построение графика против больших чисел в Matplotlib может привести к созданию оси с относительным сдвигом для меток деления. Для иллюстрации рассмотрим следующий график:

plot([1000, 1001, 1002], [1, 2, 3])

Отметки по оси абсцисс генерируются следующим образом:

0.0     0.5     1.0     1.5     2.0
 1e3

Чтобы удалить метку « 1e3» и получить метки галочек вида «1000.0», «1001.0» и т. д., выполните следующие действия:

  1. Захватите текущие оси с помощью gca().
  2. Получите объект оси X, используя get_xaxis().
  3. Получите основной объект форматирования, используя get_major_formatter().
  4. Установите атрибут useOffset для форматтеру значение False, используя set_useOffset(False).
  5. Вызовите draw() для обновления графика.

В качестве альтернативы в более новых версиях Matplotlib (1.4) поведение по умолчанию можно изменить через rcparam axes.formatter.useoffset:

matplotlib.rcParams['axes.formatter.useoffset'] = False

Применяя эти методы, вы можете удалить относительный сдвиг оси и получить метки галочек в нужном формате.

Заявление о выпуске Эта статья перепечатана по адресу: 1729722110. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3