poniedziałek, 23 stycznia 2017

zadania matplotlib

#3. Stwórz wykres z udostępnionych danych ilościowych.
#Umieść dane na jednym wykresie. Jaki wykres należy zastosować?
#dane ilościowe
#Wynik, uzyskany, w, pierwszym, teście:
#[4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0]
#Wynik, uzyskany, w, teście, po szkoleniu:
#[3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2]

przed=np. array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np. array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
sredniaprzed=np.array(np.average(przed))
sredniapo=np.array(np.average(po))

osoby =np.arange ( przed.size )
srednie = np.arange (sredniaprzed.size)
plt.subplot(211)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.35)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.35)
plt.legend ()
plt.subplot (212)
plt.bar ( srednie, sredniaprzed , label ='Średni wynik przed kursem'  , color ='r',width = 0.35)
plt.bar ( srednie+0.35, sredniapo , label ='Średni wynik po kursie' , color ='y',width = 0.35)
plt.legend ()
plt.show ()


**************************

#4. Stwórz wykres z udostępnionych danych ilościowych.
#Umieść dane na dwóch wykresach na jednym rysunku
#(subplot).
#Wynik, uzyskany, w, pierwszym, teście:
#[4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0]
#Wynik, uzyskany, w, teście, po szkoleniu:
#[3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2]

przed=np. array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np. array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
sredniaprzed=np.array(np.average(przed))
sredniapo=np.array(np.average(po))

osoby =np.arange ( przed.size )
srednie = np.arange (sredniaprzed.size)
plt.subplot(211)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)

plt.legend ()
plt.subplot (212)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.legend ()
plt.show ()
**************************

#5. Stwórz 5 dowolnych wykresów na jednym rysunku.
#Każdemu przypisz inny kolor.


przed=np.array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np.array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
sredniaprzed=np.array(np.average(przed))
sredniapo=np.array(np.average(po))
dolar=np.array([3.904, 3.882, 3.8516, 3.8588, 3.8542, 3.8706, 3.8482, 3.825, 3.8297, 3.8219, 3.7929, 3.8075, 3.7826, 3.7905, 3.809, 3.8061, 3.8174, 3.819, 3.8328, 3.8789, 3.8858, 3.9082, 3.9116, 3.9164, 3.8937, 3.8869, 3.8515, 3.8255, 3.8385, 3.8668, 3.8734, 3.8716, 3.8587])

osoby =np.arange ( przed.size )
srednie = np.arange (sredniaprzed.size)

#plot1
plt.subplot(231)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot2
plt.subplot (232)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.axis ([-1,len(po),0, 5.5])
plt.legend ()

#plot3
plt.subplot(233)
plt.bar ( srednie+0.35, sredniaprzed , label ='Średnia \nprzed kursem'  , color ='g',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot4
plt.subplot (234)
plt.bar ( srednie+0.35, sredniapo , label ='Średnia po kursie' , color ='b',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot4
plt.subplot (236)
plt.plot (dolar, label='Cena dolara')
plt.xlabel ("Dzień")
plt.ylabel ("Cena dolara")
plt.axis ([-1,len(dolar),3.5, 4.5])
plt.legend ()
plt.show ()

************************
#8. Stwórz wykres prezentujący sinusoidę.

x=np.arange(0.0, 2.0, 0.01)
y1=np.sin(2.0*np.pi*x)
y2=np.sin(2.0*np.pi*x-(np.pi/4))
plt.plot(x,y1)
plt.plot(x,y2)
plt.show()

**********************
#9. Na górnym wykresie stwórz wykres prezentujący
#sinusoidę. Na dolnym tą samą sinusoidę ale z
#dwukrotnie większą amplitudą.

x=np.arange(0.0, 2.0, 0.01)

#niepoprawne - zwiększenie częstotliwości
y1=np.sin(2.0*np.pi*x)
y2=np.sin(4.0*np.pi*x)

#poprawne - zwiększenie aplitudy
y3=np.sin(2.0*np.pi*x)
y4=2*(np.sin(2.0*np.pi*x))


#dwa niepoprawne wykresy - pierwsze rozwiązanie
plt.subplot (221)
plt.plot(x,y1)

plt.subplot (222)
plt.plot(x,y2)

#dwa poprawne wykresy - nowe rozwiązanie
plt.subplot (223)
plt.plot(x,y3)

plt.subplot (224)
plt.plot(x,y4)

plt.show()

***************************
#10. Stwórz wykres z kursem jednej z walut walut. Na
#tym rysunku dołącz wykres pokazujący średnią wartość
#waluty.

dolar=np.array([3.904, 3.882, 3.8516, 3.8588, 3.8542, 3.8706, 3.8482, 3.825, 3.8297, 3.8219, 3.7929, 3.8075, 3.7826, 3.7905, 3.809, 3.8061, 3.8174, 3.819, 3.8328, 3.8789, 3.8858, 3.9082, 3.9116, 3.9164, 3.8937, 3.8869, 3.8515, 3.8255, 3.8385, 3.8668, 3.8734, 3.8716, 3.8587])
aver=np.average(dolar)
srednia=[]
for i in range (0,len(dolar)):
    srednia.append(float(aver))
plt.plot(srednia , label='kurs średni')
plt.plot(dolar, label='kurs dzienny')
plt.legend()
plt.show ()

***************************
#11. Stwórz plik graficzny, w którym będzie kilka rożnych
#(dowolnych) wykresów: łącznie 12 wykresów w 3
#wierszach i 4 kolumnach.

przed=np.array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np.array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
sredniaprzed=np.array(np.average(przed))
sredniapo=np.array(np.average(po))
dolar=np.array([3.904, 3.882, 3.8516, 3.8588, 3.8542, 3.8706, 3.8482, 3.825, 3.8297, 3.8219, 3.7929, 3.8075, 3.7826, 3.7905, 3.809, 3.8061, 3.8174, 3.819, 3.8328, 3.8789, 3.8858, 3.9082, 3.9116, 3.9164, 3.8937, 3.8869, 3.8515, 3.8255, 3.8385, 3.8668, 3.8734, 3.8716, 3.8587])

osoby =np.arange ( przed.size )
srednie = np.arange (sredniaprzed.size)

#plot1
plt.subplot(341)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot2
plt.subplot (342)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.axis ([-1,len(po),0, 5.5])
plt.legend ()

#plot3
plt.subplot(343)
plt.bar ( srednie+0.35, sredniaprzed , label ='Średnia \nprzed kursem'  , color ='g',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot4
plt.subplot (344)
plt.bar ( srednie+0.35, sredniapo , label ='Średnia po kursie' , color ='b',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot5
plt.subplot(345)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot6
plt.subplot (346)
plt.plot (dolar, label='Cena dolara')
plt.xlabel ("Dzień")
plt.ylabel ("Cena dolara")
plt.axis ([-1,len(dolar),3.5, 4.5])
plt.legend ()

#plot7
plt.subplot(347)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot8
plt.subplot (348)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.axis ([-1,len(po),0, 5.5])
plt.legend ()

#plot9
plt.subplot(349)
plt.bar ( srednie+0.35, sredniaprzed , label ='Średnia \nprzed kursem'  , color ='g',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot10
plt.subplot (3,4,10)
plt.bar ( srednie+0.35, sredniapo , label ='Średnia po kursie' , color ='b',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot11
plt.subplot(3,4,11)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot12
plt.subplot (3,4,12)
plt.plot (dolar, label='Cena dolara')
plt.xlabel ("Dzień")
plt.ylabel ("Cena dolara")
plt.axis ([-1,len(dolar),3.5, 4.5])
plt.legend ()

plt.savefig('wykresx12.png')
plt.show ()

*************************
 #12. Stwórz plik graficzny, w którym będzie kilka rożnych
#(dowolnych) wykresów: łącznie 10 wykresów w 5
#wierszach i 2 kolumnach.

przed=np.array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np.array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
sredniaprzed=np.array(np.average(przed))
sredniapo=np.array(np.average(po))
dolar=np.array([3.904, 3.882, 3.8516, 3.8588, 3.8542, 3.8706, 3.8482, 3.825, 3.8297, 3.8219, 3.7929, 3.8075, 3.7826, 3.7905, 3.809, 3.8061, 3.8174, 3.819, 3.8328, 3.8789, 3.8858, 3.9082, 3.9116, 3.9164, 3.8937, 3.8869, 3.8515, 3.8255, 3.8385, 3.8668, 3.8734, 3.8716, 3.8587])

osoby =np.arange ( przed.size )
srednie = np.arange (sredniaprzed.size)

#plot1
plt.subplot(521)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot2
plt.subplot (522)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.axis ([-1,len(po),0, 5.5])
plt.legend ()

#plot3
plt.subplot(523)
plt.bar ( srednie+0.35, sredniaprzed , label ='Średnia \nprzed kursem'  , color ='g',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot4
plt.subplot (524)
plt.bar ( srednie+0.35, sredniapo , label ='Średnia po kursie' , color ='b',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot5
plt.subplot(525)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot6
plt.subplot (526)
plt.plot (dolar, label='Cena dolara')
plt.xlabel ("Dzień")
plt.ylabel ("Cena dolara")
plt.axis ([-1,len(dolar),3.5, 4.5])
plt.legend ()

#plot7
plt.subplot(527)
plt.bar ( osoby, przed , label ='Wynik przed kursem'  , color ='r',width = 0.90)
plt.axis ([-1,len(przed),0, 5.5])
plt.legend ()

#plot8
plt.subplot (528)
plt.bar ( osoby+0.35, po , label ='Wynik po kursie' , color ='y',width = 0.90)
plt.axis ([-1,len(po),0, 5.5])
plt.legend ()

#plot9
plt.subplot(529)
plt.bar ( srednie+0.35, sredniaprzed , label ='Średnia \nprzed kursem'  , color ='g',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

#plot10
plt.subplot (5,2,10)
plt.bar ( srednie+0.35, sredniapo , label ='Średnia po kursie' , color ='b',width = 0.35)
plt.axis ([0,1,0,9])
plt.legend ()

plt.savefig('wykresx10.png')
plt.show ()

********************
 #13. Dla udostępnionych danych ilościowych: oblicz
#różnicę punktów uzyskaną w testach. Wykreśl ją dla
#wszystkich osób. Jaki wykres należy zastosować?

#dane ilościowe
#Wynik, uzyskany, w, pierwszym, teście:
#[4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0]
#Wynik, uzyskany, w, teście, po szkoleniu:
#[3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2]

przed=np. array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np. array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])
roznica=[]
for i in range (0,len(przed)):
    roznica.append(po[i]-przed[i])
roz=np.array(roznica)
ilosc=np.arange(roz.size)
plt.bar(ilosc,roznica, label='różnica punktowa między \nwynikami przed i po szkoleniu', width=0.25)
plt.legend()
plt.show()

**********************
#14. Dla udostępnionych danych z kursami walut: oblicz
#różnicę kursów. Wykreśl ją dla kolejnych dni. Jaki
#wykres należy zastosować?

dolar=np.array([3.904, 3.882, 3.8516, 3.8588, 3.8542, 3.8706, 3.8482, 3.825, 3.8297, 3.8219, 3.7929, 3.8075, 3.7826, 3.7905, 3.809, 3.8061, 3.8174, 3.819, 3.8328, 3.8789, 3.8858, 3.9082, 3.9116, 3.9164, 3.8937, 3.8869, 3.8515, 3.8255, 3.8385, 3.8668, 3.8734, 3.8716, 3.8587])
euro=np.array([4.3576, 4.3484, 4.3135, 4.2971, 4.2975, 4.2912, 4.2693, 4.2632, 4.2674, 4.2626, 4.27, 4.2863, 4.2837, 4.2884, 4.303, 4.3139, 4.3116, 4.3095, 4.327, 4.3395, 4.3395, 4.3555, 4.3607, 4.3796, 4.348, 4.3396, 4.3289, 4.3122, 4.3264, 4.346, 4.352, 4.3455, 4.3356])
roznica=[]
for i in range (0,len(dolar)):
    roznica.append(float(euro[i])-float(dolar[i]))
roz=np.array(roznica)
dni =np.arange ( roz.size)
plt.subplot(211)
plt.plot(euro, label='kurs dzienny\neuro')
plt.plot(dolar, label='kurs dzienny\ndolara')
plt.legend()
plt.subplot(212)
plt.bar(dni, roz, label='kurs € minus kurs $', width=0.35)
plt.plot(roz)
plt.legend(loc='lower right')
plt.show ()

*******************************
#15. Dla udostępnionych danych ilościowych: oblicz
#średnią uzyskaną w obu testach. Wykreśl ją dla 10
#pierwszych osób i zaznacz odchylenie standardowe.

#dane ilościowe
#Wynik, uzyskany, w, pierwszym, teście:
#[4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0]
#Wynik, uzyskany, w, teście, po szkoleniu:
#[3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2]

przed=np. array ([4, 3, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 1, 2, 1, 2, 1, 3, 3, 0, 4, 1, 1, 2, 4, 2, 1, 3, 2, 2, 1, 3, 2, 3, 0, 2, 0])
po=np. array ([3, 1, 1, 4, 3, 2, 4, 2, 4, 4, 4, 3, 4, 1, 3, 4, 0, 1, 0, 2, 3, 2, 4, 3, 2, 3, 1, 2, 2, 1, 1, 0, 3, 2, 4, 1, 0, 0, 1, 2])

przed10=[]
po10=[]

for i in range (0,9):
    przed10.append(przed[i])
    po10.append(po[i])

odchprzed=np.std(przed10)
odchpo=np.std(po10)

sredniaprzed=np.array(np.average(przed10))
sredniapo=np.array(np.average(po10))

srednie=[]
srednie.append(sredniaprzed)
srednie.append(sredniapo)
odchylenia=[]
odchylenia.append(odchprzed)
odchylenia.append(odchpo)
odchylenia=np.array(odchylenia)

slupki=np.arange(odchylenia.size)

plt.bar(slupki, srednie , yerr=odchylenia)
plt.xlabel('średnia przed\\po szkoleniu wraz z odchyleniem standardowym wyniku',)
plt.axis([0,1.8,-1,4.5])
plt.legend ()
plt.show ()




Brak komentarzy:

Prześlij komentarz