Skip to content

Instantly share code, notes, and snippets.

@pjastr
Last active May 23, 2019 13:24
Show Gist options
  • Save pjastr/df5f126b1b31c6d1ff2b5a27dc06f7c9 to your computer and use it in GitHub Desktop.
Save pjastr/df5f126b1b31c6d1ff2b5a27dc06f7c9 to your computer and use it in GitHub Desktop.

Biblioteka matplotlib - cd.

Uwaga: wszystkie polecenia należy wykonać samodzielnie. Można współpracować, ale przykłady powinny różnić się rozmiarem czy elementami serii lub ramek danych (o ile nie zaznaczono inaczej).

  1. Przeanalizuj kod:
import numpy as np
import matplotlib.pyplot as plt

x = np.arange(14)
y = np.cos(5 * x)

plt.plot(x, y + 2, 'blue', linestyle="-", label="niebieski")

plt.plot(x, y + 1, 'red', linestyle=":", label="czerwony")

plt.plot(x, y, 'green', linestyle="--", label="zielony")

plt.legend(title='Legenda:')
plt.show()
  1. (kaa.py) Zmodyfikuj kod z punktu 1 tak, aby na jednym wykresie umieścić wykresu funkcji $y=e^x$, $y=x^3$, $y=x^4$ na przedziale $[-7,7]$.

  2. Przeanalizuj kod:

import numpy as np
import matplotlib.pyplot as plt

fig, ax1 = plt.subplots()
t = np.arange(0.01, 10.0, 0.01)
s1 = np.exp(t)
ax1.plot(t, s1, 'b-')
ax1.set_xlabel('time (s)')

ax1.set_ylabel('exp', color='b')
ax1.tick_params('y', colors='b')

ax2 = ax1.twinx()
s2 = np.sin(2 * np.pi * t)
ax2.plot(t, s2, 'r.')
ax2.set_ylabel('sin', color='r')
ax2.tick_params('y', colors='r')

fig.tight_layout()
plt.show()
  1. (kab.py) Zmodyfikuj kod z punktu 3 tak, aby na jednym wykresie z różnymi osiami pionowymi narysować wykresy funkcji $y=100+\sin x$ oraz $y=\frac{1}{x}$ na przedziale $[0.1,5]$. Dobierz odpowiednio minimum i maksimum na osiach pionowych tak, aby wykres był widoczny w całości.

  2. Przeanalizuj kod:

import matplotlib.pyplot as plt

# Pie chart, where the slices will be ordered and plotted counter-clockwise:
labels = 'Frogs', 'Hogs', 'Dogs', 'Logs'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)  # only "explode" the 2nd slice (i.e. 'Hogs')

fig1, ax1 = plt.subplots()
ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',
        shadow=True, startangle=90)
ax1.axis('equal')  # Equal aspect ratio ensures that pie is drawn as a circle.

plt.show()
  1. (kac.py) Na podstawie pliku http://wmii.uwm.edu.pl/~piojas/wp-content/uploads/2019/05/kolej.csv przygotuj wykres kołowy pokazujący procentowy udział województw w ogólnej liczbie wszystkich linii kolejowych. Wyodrębnij trzy największe z nich (za pomocą explode).

Źródło: Bank danych lokalnych GUS.

  1. (kad.py) Zapoznaj się z przykładem na stronie https://python-graph-gallery.com/3-control-color-of-barplots/. Na jego podstawie przygotuj wykres słupkowy ilustrujący dane znajdujące się w jednym z wybranych plików csv przygotowanych na liście z ćw. nr 10.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment