πŸ“Š Как ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ matplotlib

Как ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты Π² Matplotlib?

Для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° экспонСнты с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Matplotlib Π²Π°ΠΌ понадобится Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги:

import numpy as np
import matplotlib.pyplot as plt

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ для экспонСнты
x = np.linspace(0, 10, 1000)
y = np.exp(x)

# Π‘Ρ‚Ρ€ΠΎΠΈΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊ
plt.plot(x, y)

# Настройка осСй ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°
plt.xlabel('X')
plt.ylabel('Y')
plt.title('Π“Ρ€Π°Ρ„ΠΈΠΊ экспонСнты')

# ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°
plt.show()

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ создаСт массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ x с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ linspace ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ NumPy, Π° Π·Π°Ρ‚Π΅ΠΌ вычисляСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ значСния y с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ exp ΠΈΠ· Ρ‚ΠΎΠΉ ΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π—Π°Ρ‚Π΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ plot Π³Ρ€Π°Ρ„ΠΈΠΊ строится Π½Π° основС этих Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ добавляСм подписи осСй ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ xlabel, ylabel ΠΈ title. И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ show Π³Ρ€Π°Ρ„ΠΈΠΊ отобраТаСтся.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Matplotlib

Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ! Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ популярной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Matplotlib. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для создания красивых ΠΈ понятных Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

1. Установка ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Matplotlib

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Matplotlib, Ссли ΠΎΠ½Π° Π΅Ρ‰Π΅ Π½Π΅ установлСна Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Для этого Π²Π°ΠΌ понадобится установщик ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² pip.

pip install matplotlib

ПослС установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ строки ΠΊΠΎΠ΄Π°:

import matplotlib.pyplot as plt

2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ°

Для Π½Π°Ρ‡Π°Π»Π°, создадим массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ оси x, Π½Π° основС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ Π³Ρ€Π°Ρ„ΠΈΠΊ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ numpy.linspace() для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ распрСдСлСнных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ значСния ΠΎΡ‚ 0 Π΄ΠΎ 10 с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ шагом.

import numpy as np

x = np.linspace(0, 10, 100)

Π—Π°Ρ‚Π΅ΠΌ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ массив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ оси y, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ x. Для этого ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ numpy.exp(). Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, построим Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты Π²ΠΈΠ΄Π° y = e^x.

y = np.exp(x)

3. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΅ΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° экспонСнты. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Matplotlib, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°:

plt.plot(x, y)
plt.xlabel('x')
plt.ylabel('y')
plt.title('Π“Ρ€Π°Ρ„ΠΈΠΊ экспонСнты: y = e^x')
plt.grid(True)
plt.show()

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ сначала ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ plt.plot(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ линию Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ значСния x ΠΈ y. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ добавляСм подписи осСй с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ plt.xlabel() ΠΈ plt.ylabel(). Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° задаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ plt.title(). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ сСтки Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² Π΅Π³ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ plt.grid(True). НаконСц, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ plt.show().

4. НастраиваСм Π³Ρ€Π°Ρ„ΠΈΠΊ

Matplotlib прСдоставляСт мноТСство ΠΎΠΏΡ†ΠΈΠΉ для настройки внСшнСго Π²ΠΈΠ΄Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ Π»ΠΈΠ½ΠΈΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ, Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π± осСй ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ настроСк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π±ΠΎΠ»Π΅Π΅ красивого ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°.

plt.plot(x, y, color='red', linestyle='--', linewidth=2)
plt.scatter(x[::10], y[::10], marker='o', color='blue', label='Sampled Points')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Π“Ρ€Π°Ρ„ΠΈΠΊ экспонСнты: y = e^x')
plt.legend()
plt.grid(True)
plt.show()

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΌΡ‹ использовали ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ color, linestyle ΠΈ linewidth Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ plt.plot(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚, ΡΡ‚ΠΈΠ»ΡŒ ΠΈ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ Π»ΠΈΠ½ΠΈΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° соотвСтствСнно. Ѐункция plt.scatter() позволяСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊ. ΠœΡ‹ использовали ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ marker ΠΈ color для настройки Π²ΠΈΠ΄Π° ΠΈ Ρ†Π²Π΅Ρ‚Π° Ρ‚ΠΎΡ‡Π΅ΠΊ. Ѐункция plt.legend() позволяСт Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π»Π΅Π³Π΅Π½Π΄Ρƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ значСния Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅.

5. Π’Ρ‹Π²ΠΎΠ΄

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли, ΠΊΠ°ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Matplotlib. ΠœΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ с установки ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π·Π°Ρ‚Π΅ΠΌ создали Π΄Π°Π½Π½Ρ‹Π΅ для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ°. Π”Π°Π»Π΅Π΅, ΠΌΡ‹ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ построСниС Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, Π° Ρ‚Π°ΠΊΠΆΠ΅ рассмотрСли Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ возмоТности настройки Π΅Π³ΠΎ внСшнСго Π²ΠΈΠ΄Π°.

ΠœΠ°Ρ‚ΠΏΠ»ΠΎΡ‚Π»ΠΈΠ± прСдоставляСт мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ возмоТностСй для создания Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ². РСкомСндуСтся ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для получСния Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΅Π΅ использовании.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

ΠžΡΠ½ΠΎΠ²Ρ‹ Matplotlib | ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π“Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² На Python

ΠžΡΠ½ΠΎΠ²Ρ‹ Matplotlib. Визуализация Π΄Π°Π½Π½Ρ‹Ρ…. Π“Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π² Python

#2. Ѐункция plot для построСния ΠΈ оформлСния Π΄Π²ΡƒΠΌΠ΅Ρ€Π½Ρ‹Ρ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² | Matplotlib ΡƒΡ€ΠΎΠΊΠΈ

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ“Š Как ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊ экспонСнты с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ matplotlib