Skip to content

Instantly share code, notes, and snippets.

@pjastr
Created June 6, 2019 12:46
Show Gist options
  • Save pjastr/6dacbe9e475101848c028ffd0f302378 to your computer and use it in GitHub Desktop.
Save pjastr/6dacbe9e475101848c028ffd0f302378 to your computer and use it in GitHub Desktop.

Biblioteka matplotlib - cd., biblioteka seaborn.

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

data = [[12., 25., 50., 20.],
        [11., 23., 51., 17.],
        [13., 22., 52., 19.]]
X = np.arange(4)
plt.bar(X + 0.00, data[0], color='b', width=0.25)
plt.bar(X + 0.25, data[1], color='g', width=0.25)
plt.bar(X + 0.50, data[2], color='r', width=0.25)
plt.show()
  1. (laa.py) Na podstawie ostatniego punktu stwórz podobny wykres prezentujący poparcie dla komitetów wyborczych w trzech dowolnych okręgach wyborczych. Dane dostępne są m.in. tutaj https://wybory.gov.pl/pe2019/pl/wyniki/pl .

  2. Przeanalizuj kod:

import numpy as np
import matplotlib.pyplot as plt

women_pop = np.array([5., 30., 45., 22.])
men_pop = np.array([5., 25., 50., 20.])
X = np.arange(4)
plt.barh(X, women_pop, color='r')
plt.barh(X, -men_pop, color='b')
plt.show()
  1. (lab.py) Na podstawie poprzedniego punktu stwórz wykres struktury wieku i płci. Dane za 2017 rok są zebrane np. tutaj http://wmii.uwm.edu.pl/~piojas/wp-content/uploads/2019/06/ludnosc.csv .

  2. Przeanalizuj kod:

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sb

x = np.arange(14)
y = np.cos(5 * x)
#sb.set()
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:', loc=3)
plt.show()

Co się zmieni po odkomentowaniu linijki?

  1. Na bazie poniższego kodu potestuj różne dostępne style i palety:
import numpy as np
from matplotlib import pyplot as plt


def sinplot(flip=1):
    x = np.linspace(0, 14, 100)
    for i in range(1, 5):
        plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)


import seaborn as sns

sns.set_style("whitegrid")
sns.set_palette("husl")
sinplot()
print(sns.axes_style())
plt.show()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment