TGViewer
Интеллект в коде: Python, AI, Data Science Интеллект в коде: Python, AI, Data Science @ai_in_progress · 125 subscribers
Post #106 62
📊 Как форматировать оси X и Y в Matplotlib?
Если ты работаешь с графиками в Python, то наверняка сталкивался с некрасивыми подписями на осях – слишком много знаков после запятой или неудобные числа. 📉

Сегодня разберем FormatStrFormatter – простой инструмент, который помогает красиво оформлять числа на осях!

📌 Что такое FormatStrFormatter?
Это специальный класс в matplotlib.ticker, который позволяет форматировать подписи осей (X и Y) с помощью строковых шаблонов.

✅ Можно ограничить количество знаков после запятой
✅ Можно добавить символы (%, $, °C и т. д.)
✅Можно перевести числа в научную нотацию

💡 Пример использования:
# 📌 Импортируем библиотеки
import matplotlib.pyplot as plt # Графики
import numpy as np # Математика
from matplotlib.ticker import FormatStrFormatter # Формат подписей

# 📌 Создаем данные
x = np.linspace(0, 10, 100) # 100 точек от 0 до 10
y = np.sin(x) * 10 # Синус увеличенный в 10 раз

# 📌 Создаем график
fig, ax = plt.subplots()
ax.plot(x, y, label="Синус волна") # Линия на графике

# 📌 Форматируем оси X и Y
ax.xaxis.set_major_formatter(FormatStrFormatter('%.1f')) # X с 1 знаком после запятой
ax.yaxis.set_major_formatter(FormatStrFormatter('%.2f')) # Y с 2 знаками после запятой

# 📌 Добавляем подписи и заголовок
ax.set_xlabel("Ось X (1 знак после запятой)")
ax.set_ylabel("Ось Y (2 знака после запятой)")
ax.set_title("📊 График с форматированными осями")

# 📌 Показываем график
plt.legend()
plt.show()


📖 Разбираем код по шагам
1️⃣ Генерируем данные
x = np.linspace(0, 10, 100)  # 100 точек от 0 до 10
y = np.sin(x) * 10 # Считаем синус и увеличиваем масштаб

🔹 np.linspace(0, 10, 100) – равномерно создаем 100 точек.
🔹 np.sin(x) * 10 – вычисляем синус и увеличиваем масштаб.

2️⃣ Создаем график
fig, ax = plt.subplots()  
ax.plot(x, y, label="Синус волна")

🔹 fig, ax = plt.subplots() – создаем область для графика.
🔹 ax.plot(x, y, label="Синус волна") – строим линию.

3️⃣ Форматируем подписи осей X и Y
ax.xaxis.set_major_formatter(FormatStrFormatter('%.1f'))  # X: 1 знак после запятой
ax.yaxis.set_major_formatter(FormatStrFormatter('%.2f')) # Y: 2 знака после запятой

🔹 '%.1f' – форматирует ось X, оставляя 1 знак после запятой.
🔹 '%.2f' – форматирует ось Y, оставляя 2 знака после запятой.

4️⃣ Добавляем подписи и заголовок
ax.set_xlabel("Ось X (1 знак после запятой)")  
ax.set_ylabel("Ось Y (2 знака после запятой)")
ax.set_title(" График с форматированными осями")

📌 Чтобы график выглядел красиво и понятно, всегда добавляй подписи!

5️⃣ Отображаем график
plt.legend()  # Показываем легенду
plt.show() # Выводим график

🔹 plt.legend() – показывает подпись графика ("Синус волна").
🔹 plt.show() – отображает график.

🔧 Дополнительные форматы FormatStrFormatter
ax.xaxis.set_major_formatter(FormatStrFormatter('%d%%'))  # X в процентах
ax.yaxis.set_major_formatter(FormatStrFormatter('$%.2f')) # Y в долларах
  • 🔥 4
  • 👏 1
  • 😱 1
  • 🫡 1
More from @ai_in_progress
  1. Mar 4, 2026Seedance 2.0 теперь стоит копейки. Официальные цены API вышли сегодня! ByteDance только чт…
  2. Mar 2, 2026🔥ГЛАВНЫЕ НОВОСТИ ИИ ЗА СЕГОДНЯ ➖Grok Imagine взорвал всех Новая фича Расширение от кадра…
  3. Mar 1, 2026Seedance 2.0 - модель, о которой сейчас говорят почти все, кто следит за развитием AI-виде…
  4. Feb 28, 2026Небольшое обновление формата канала📊 Изначально этот канал создавался исключительно для м…
  5. Feb 10, 2026Аналитический пайплайн: двигатель, который превращает данные в решения Вы слышали модное «…
  6. Feb 7, 2026С возвращением в мир данных! 🌐 Ваш канал по аналитике снова в активной фазе. Перерыв окон…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →