Kreslení funkcí jednoduše#
Jednoduché úkoly je vhodné řešit jednoduše. Například pokud chceme vykreslit několik funkcí do jednoho grafu, prostě postupně voláme příkazy kreslící jednotlivé funkce.
Je dobré nejprve zavolat knihovny a nastavit proměnné, poté vykrelist grafy a poté dodělat kosmetické úpravy. To je v jednotlivých políčkách. Na konci práce bude asi vhodné poslední čtyři políčka spojit. Zkontrolujte, že jste v příkazovém modu (needitujete políčko, nalevo je modrá čára a ne zelená), označte spojované buňky (shift plus šipky) a spojte (shift + M). Případně neznačujte a shift+M připojí následující buňku. Stejnou práci odvede Menu -> Edit -> Merge Cell Bellow).
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
N = 8
meze = [0,1]
lov = [0,0.1,0.2,0.3]
x = np.linspace(*meze,N)
def logisticky_rust(x,h=0):
"""
Funkce definuje pravou stranu logisticke rovnice s pridanym lovem konstantni intenzity.
"""
r = 1
K = 1
return(x*r*(1-x/K) - h)
fig, ax = plt.subplots()
for h in lov:
plt.plot(x,logisticky_rust(x,h=h))
Poznámka: Pro rychlou orientaci jak vypadají grafy funkcí často nepotřebujeme popisky, nadpis apod. Potom není nutné použít v předchozím kódu řádek s nastavením proměnných fig
a ax
. Na tyto proměnné se odkazujeme při přidávání popisků, mezí pro osy apod. Alternativou, pokud bychom tyto proměnné nenastavili, je použití příkazů plt.gca()
a plt.gcf()
(„get current axes“ a „get current figure“).
ax.legend(lov, title="Intenzita lovu")
ax.set(title="Vliv lovu na logistický růst",
xlabel="velikost populace",
ylabel="rychlost růstu",
ylim=(0,None))
ax.grid()
fig