Programmeringsoppgaver i Ekte Data
Først må vi laste inn numpy og matplotlib.pyplot
In [1]:
import numpy as np # for matematikk
import matplotlib.pyplot as plt # for figurer
import sys
# !!! VIKTIG !!!
# Bytt ut stien under (C:\Users\iren_\Documents\EkteData\Funksjoner)
# slik at den peker på hvor på din PC du har lagret mappen "Funksjoner".
sys.path.append(r"C:\Users\iren_\Documents\EkteData\Funksjoner")
from EkteDataFunk import loadData # for filinnlasting
Så må vi laste inn et datasett. Flere datasett som er enkle å bruke og som brukes i andre av Ekte Data programmeringsoppgaver finnes på samme link.
In [ ]:
file='PrecipVestlandMonthly.txt'
data = loadData(file, rydd='N')
print(data.shape) # Dette gir dimensjonene til datasettet. Man må skrive
# "print()" rundt fordi bare den siste linjen i en celle
# printes ut automatisk
data # Dette printer ut alle verdiene i "data"
Sorter datasettet i en tidsvektor og en data-vektor, og ta stilling til fyll-verdier.
In [ ]:
data[data==-999.99]=np.nan
# Hele datasettet utenom den første kolonnen som er årene
nedbør=data[:,1:]
# Gjennomsnittlig månedsnedbør per år. axis=1 beskriver at vi vil ta
# gjennomsnittet av alle kolonnene slik at det blir en verdi per år. axis=0
# ville gitt gjenomsnitt over radene.
nedbør=np.nanmean(nedbør, axis=1)
# Den første kolonnen
tid=data[:,0]
Lag en figur!
In [ ]:
plt.plot(tid,nedbør) # plot nedbør som en funksjon av tid
plt.xlim(1899,2020) # definer min/max til x-aksen for å unngå tomrom på sidene
plt.xlabel('Tid') # navn på x-aksen
plt.ylabel('Nedbør [mm]') # navn på y-aksen
plt.title('Gjennomsnittlig månedsnedbør (Vestlandet: 1900-2020)') # Tittel
plt.grid(True) # Vis rutenett. Om du ikke vil ha det, skriv plt.grid(False).
In [ ]:
In [ ]:
Last ned og prøv selv: