<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Magasinstatistikk for norsk kraftproduksjon]]></title><description><![CDATA[<p dir="auto">Når politikere, analytikere eller andre skal forklare, eller bortforklare <img src="https://datalandsbyen.norge.no/assets/plugins/nodebb-plugin-emoji/emoji/android/1f60a.png?v=6ee5742f777" class="not-responsive emoji emoji-android emoji--blush" style="height:23px;width:auto;vertical-align:middle" title="😊" alt="😊" />, kraftprisene henvises det ofte til magasinfyllingen i norske vannmagasiner. Fordi vannkraften står for om lag 90-prosent av kraftproduksjonen i Norge, er fyllingsgraden eller lagret av vann viktig både for strømpriser og for at vi skal ha strøm når vi trenger den.</p>
<p dir="auto">De underliggende dataene er enklere tilgjengelig enn hva mange kanskje tror. Norges vassdrags- og energidirektorat (NVE) har åpne API-er for disse datasettene som oppdateres ukentlig. I <a href="https://data.norge.no/datasets" rel="nofollow ugc">datakatalogen</a> kan du finne veien til  <a href="https://data.norge.no/datasets/01decbac-3cf4-3548-83da-2f991f25bbce" rel="nofollow ugc">magasinstatistikk</a> fra NVE. Mer informasjon om datasettet finnes <a href="https://www.nve.no/energi/analyser-og-statistikk/om-magasinstatistikken/" rel="nofollow ugc">her</a>.</p>
<p dir="auto"><strong>API-er for magasinstatistikk</strong><br />
Det er flere API-er fra denne statistikken. Her har vi to av de:</p>
<ul>
<li>
<p dir="auto"><a href="https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligDataMinMaxMedian" rel="nofollow ugc">https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligDataMinMaxMedian</a>. API-et gir et datasett over minimum-, maksimum- og medianverdier.</p>
</li>
<li>
<p dir="auto"><a href="https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligData" rel="nofollow ugc">https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligData</a>. API-et gir et datasett med ca. 13 000 rader med ukentlig oppdatering siden 1995.</p>
</li>
</ul>
<p dir="auto">Disse dataene kan benyttes til mange formål og fremstillinger. Nedenfor viser vi et par eksempler.</p>
<p dir="auto"><strong>Eksempel: Utvikling av fyllingsgraden for hele landet så langt i år</strong></p>
<p dir="auto"><img src="/assets/uploads/files/1663933073399-magasin_no_ggplot.jpeg" alt="Magasin_NO_ggplot.jpeg" class=" img-fluid img-markdown" /></p>
<p dir="auto"><em>I grafen ser vi utviklingen av fyllingsgraden for Norge i år, mot historisk minimums- og maksimumsnivåer. Vi ser at fyllingsgraden i dag er rett under 70% for landet samlet sett.</em></p>
<p dir="auto"><strong>Eksempel: Store variasjoner i fyllingsgrad mellom de ulike områdene</strong></p>
<p dir="auto"><img src="/assets/uploads/files/1663933265449-magasin_plot_grid.jpeg" alt="Magasin_plot_grid.jpeg" class=" img-fluid img-markdown" /></p>
<p dir="auto"><em>Grafene viser fyllingsgraden for ulike prisområder i Norge. For Østlandet (NO1) og Sør-Norge (NO2), de to øverste grafene, er det historisk lav fyllingsgrad. Det er situasjonen her som har bidratt til spekulasjonene om vi har nok vann til vinteren. For Nord-Norge (NO4) derimot, er det historisk høy fyllingsgrad på 90%. Disse variasjonene er ett viktig element til de store prisforskjellene en har sett mellom nord og sør.</em></p>
<p dir="auto">Grafene er utarbeidet i <a href="https://www.r-project.org" rel="nofollow ugc">R</a>, men kan følgelig utarbeides i mange andre verktøy. Legger ved koden for de siste eksemplet, som sikkert har rom for forbedringer. Kom gjerne med andre fremstillinger eller eksempler.</p>
<pre><code>#pakker(samlinger av funksjonalitet i R) for oppgaven NB! Må installeres først
library(jsonlite) 
library(tidyverse) #inneholder bl.a. ggplot2 som vi benytter for plot
library(httr)
library(gridExtra) #for flere plot
#1) Henter inn datasettene
dat1 &lt;- "https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligDataMinMaxMedian" %&gt;%
 fromJSON() #datasett over min, max og median
 
dat2 &lt;- "https://nvebiapi.nve.no/api/Magasinstatistikk/HentOffentligData" %&gt;%
 fromJSON() #datasett over magasinfylling siden 1995 med ca 13000 rader

#2) Strukturerer data
df1 &lt;- dat1[dat1$omrType %in% c("EL"), ]
df1 &lt;- df1[,c(2,3,4,8)]
colnames(df1)&lt;- c("omrnr","Uke", "min", "maks")
df1 &lt;- gather(df1, Aar, fyllingsgrad, min:maks, factor_key = FALSE)

df2 &lt;- dat2[dat2$omrType %in% c("EL"), ]
df2 &lt;- df2[,(3:6)]
colnames(df2) &lt;- c("omrnr","Aar","Uke","fyllingsgrad")
df2 &lt;- df2[df2$Aar %in% c(2022), ] 
df2$Aar = paste0('yr', df2$Aar)

df3 &lt;- bind_rows(df1, df2) #lager en tabell av df1 og df2

#3)Lager og formaterer plot (det som er felles). Benytter ggplot-pakken. 
p1 &lt;- ggplot(df3, aes(x = Uke, y = fyllingsgrad*100, colour = Aar, size = Aar))+  
 labs(x= "Ukenummer", y = "Fyllingsgrad (%)", size = 0.7)+
 theme(panel.background = element_rect(fill="grey95"))+
 theme(legend.position = "bottom",legend.justification="top", legend.title = element_blank())+
 scale_x_continuous(breaks = seq(0, 52, by = 5))+
 scale_y_continuous(breaks = seq(0, 100, by = 10), limits = c(0,100))+
 scale_color_manual(values = c(maks = "black", yr2022 = "red", min = "black"))+
 scale_size_manual(name= "", values = c(maks = 0.7, yr2022 = 0.9, min = 0.7), guide = "none")

#4) Lager de ulike plotene (dataene er forskjellig) for de ulike prisomraadene:
NO1 &lt;- p1 + 
 geom_line(data = df3[df3$omrnr %in% c(1), ], ) + 
 labs(title = "Magasinfylling i ulike prisomraader mot min- og maksimumsnivaer", subtitle =   "Prisomraade: NO1", caption = "")

NO2 &lt;- p1 + 
 geom_line(data = df3[df3$omrnr %in% c(2),], ) + 
 labs(title = "", subtitle = "Prisomrade: NO2", caption = "")

NO3 &lt;- p1 + 
 geom_line(data = df3[df3$omrnr %in% c(3), ], ) + 
 labs(title = "", subtitle = "Prisomrade: NO3", caption = "")

NO4 &lt;- p1 + 
 geom_line(data = df3[df3$omrnr %in% c(4), ], ) + 
 labs(title = "", subtitle = "Prisomrade: NO4", caption = "Data: www.nve.no")

#5) De ulike plotene:   
grid.arrange(NO1,NO2,NO3, NO4, nrow=2, ncol=2)

</code></pre>
]]></description><link>https://datalandsbyen.norge.no/topic/238/magasinstatistikk-for-norsk-kraftproduksjon</link><generator>RSS for Node</generator><lastBuildDate>Thu, 21 May 2026 01:21:07 GMT</lastBuildDate><atom:link href="https://datalandsbyen.norge.no/topic/238.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 23 Sep 2022 11:54:38 GMT</pubDate><ttl>60</ttl></channel></rss>