Source: http://fi.opasnet.org/fi/HNH2035
Timestamp: 2019-12-09 03:32:04+00:00
Document Index: 14421802

Matched Legal Cases: ['kko\n', 'kko ', 'kko ', 'kko ', 'kko\n', 'kko ', 'kko ', 'kko ', 'kko ', 'kko ']

Hiilineutraali Helsinki 2035 – Opasnet Suomi
Hiilineutraali Helsinki 2035
(Ohjattu sivulta HNH2035)
Sivutunniste: Op_fi5767
Hiilineutraali Helsinki 2035 (HNH2035)[1] on toimenpideohjelma, jolla Helsingin kaupunki pyrkii vähentämään oman kaupunkiorganisaationsa sekä Helsingin alueella tapahtuvien ilmastopäästöjen määrää niin, että ne alittaisivat hiilinielujen määrän eli kaupunki olisi hiilineutraali vuoteen 2035 mennessä. Toimenpideohjelmalla on oma seurantatyökalu, jossa on myös kuvattuna kymmeniä ilmastonmuutoksen torjuntaan liittyviä mittareita.
Tämän sivun tiedot auttavat toimenpideohjelman toteutuksessa avoimen päätöksentekokäytännön mukaisesti.
3.2 Datan jalostaminen
3.3 Laskenta
3.3.1 Kerää ja varastoi masterdata
3.3.2 Jalosta masterdataa malleja varten
3.3.3 Kerää toimenpide- ja vaikutustiedot
3.3.4 Piirrä näkemysverkko
3.3.5 Tarkastele vaikutuksia
3.3.6 Mittarit Helsingin energiapäätöksestä 2015
3.3.7 Posterikuva Climate-KIC
7 Kommentointi
8 Aiheeseen liittyviä tiedostoja
Mitä toimenpiteitä (mukaan lukien mutta ei rajoittuen HNH2035:een) pitäisi tehdä, jotta Helsinki olisi hiilineutraali vuoteen 2035 mennessä? Hiilipäästöihin ei tässä yhteydessä lasketa epäsuoria hiilipäästöjä, jotka syntyvät jossain muualla asukkaiden kuluttamisesta johtuen.
Miten toimenpiteitä tulisi seurata, jotta kaikilla olisi käytössään ajantasainen tieto siitä, a) miten toimenpiteet ovat edenneet ja b) mitä ilmasto-, talous- ja muita vaikutuksia niillä on ollut?
Hiilineutraali Helsinki -toimenpideohjelman seurantajärjestelmä eli seurannan "palikoiden suhteet". Järjestelmän eri osien avulla on tarkoitus kerätä tietoa toimenpiteiden etenemisestä ja välittömistä vaikutuksista (esimerkiksi toiminnasta aiheutuneista kustannuksista) ja näiden avulla arvioida myös välillisiä tai pitkän aikavälin vaikutuksia (esimerkiksi ilmastopäästöjen vähenemistä). Lisäksi seurantajärjestelmällä mahdollistetaan kansalaisten osallistuminen ja kritiikki sekä tietojen leviäminen vapaasti yli organisaatiorajojen.
Jokaisella kaupungin toimintalohkolla on toimenpiteitä, jotka voivat lisätä tai vähentää ilmastopäästöjä. Siksi tehokkaan ilmastotoimintaohjelman rakentaminen on vaikeaa. Pitää pystyä arvioimaan hyvin monenlaisten toimenpiteiden vaikuttavuutta ja tehokkuutta. Lisäksi jokaisen toimintalohkon avainihmisiä pitäisi pystyä tiedottamaan oikeaan aikaan, kun on valmisteilla jokin ilmastoon vaikuttava päätös tai toimenpide. Toimenpideohjelman toteuttaminen on siis kaksinkertaisesti haasteellista.
Toimenpiteiden tunnistamiseen on hyödynnetty laajoja työpajoja, joihin on saatu mukaan monien eri toimintalohkojen toimijoita ja asiantuntijoita. Näin on joukkoistamalla pystytty keräämään tietoa ja näkemyksiä siitä, mitä mahdollisuuksia eri puolilla on, ja kokoamaan näistä pitkiä toimenpide-ehdotuslistoja.
Seuraavassa vaiheessa on käytävä läpi ehdotuksia ja asiantuntijoiden avustuksella pyrittävä arvioimaan toimenpiteiden vaikuttavuutta (ilmastovaikutus hiilidioksiditonneina laskettuna tätä menoa -vaihtoehtoon [business as usual] verrattuna) ja tehokkuutta (toimenpiteen lisäkustannus vähennettyä hiilidioksiditonnia kohti).
Kolmannessa vaiheessa tunnistetaan eri toimenpiteiden kytkennät meneillään olevaan tai tulevaan päätöksentekoon. Toimenpideohjelman hyötyhän tulee siitä, että sen avulla pystytään tekemään parempia päätöksiä ja välttämään huonoja ratkaisuja. Kytkentöjä pitää pystyä tunnistamaan sekä toimenpideohjelmasta käsin (osallistujat vinkkaavat päätöksentekijöitä) että päätöksenteosta käsin (päättäjät etsivät tietoa siitä, mitkä toimenpide-ehdotukset kuuluvat heidän päätösvaltaansa.)
Toimenpideohjelman toteutukseen esitetään olemassaolevien ja uusien järjestelmien yhteentoimivuuden rakentamista. Tällaisella ratkaisulla saataisiin yllä kuvattu prosessi toteutettua skaalautuvasti eli siten, että se palvelisi koko Helsingin kaupunkiorganisaatiota ja muita Helsingin toimijoita (mahdollisesti myöhemmin laajentuen muihin kaupunkeihin).
Järjestelmän ytimessä on Stadinilmasto-nettisivusto, joka tähänkin asti on toiminut keskeisenä ilmastotiedon jakelukanavana. Nyt siihen on tarkoitus lisätä uusia toiminnallisuuksia. Kaikkiin alla esitellyt osiot joko näkyvät suoraan Stadinilmaston sivuina tai sieltä on linkit niille sivuille, jotka ovat Stadinilmaston ulkopuolella. Stadinilmasto on siis se keskeinen käyttäjärajanpinta, josta pääsee käsiksi kaikkiin tietoihin.
Seurantatiedon keruu alkaa yleiskäyttöisistä taulukoista, joita jokainen toimenpiteestä vastaava organisaatio tai henkilö täyttää. Jotta tiedonkeruu olisi mahdollisimman yksinkertaista ja avointa, tähän käytetään toimenpidekohtaisia Google Sheetejä, joista tieto kerätään koneellisesti yhteen seurantatiedon laskentaa varten. Esimerkkinä energiarenessanssin toimenpiteitä.
Tieto kerätään käyttämällä avoimen R-ohjelman toiminnallisuuksia. Esimerkkilaskentaa on myöhemmin tällä sivulla.
Toimenpiteillä on omat sivunsa Stadinilmastossa, jossa on ajantasainen tieto kunkin toimenpiteen etenemisestä ja vaikutuksista siltä osin kuin ne ovat kohdennettavissa yksittäiseen toimenpiteeseen.
Toimenpidesivuun liittyy myös mahdollisuus keskustella toimenpiteestä eri näkökulmista. Varsinaisen ohjelman toimenpiteet on jo päätetty toteuttaa, joten pääpaino on mahdollisimman tehokkaassa toteutuksessa eikä siinä, pitäisikö toimenpidettä lainkaan toteuttaa. Toisaalta keskustelun avulla voi nostaa harkittavaksi kokonaan uusia toimenpiteitä. Keskustelua voi käydä usealla eri tavalla.
Kerrokantasi.fi on Helsingin kehittämä keskustelualue.
Helsinki app on kännykkäsovellus, jonka kautta voi osallistua Kerrokantasi-keskusteluihin.
Decidim on Barcelonan kaupungin kehittämä osallistumistyökalu, jonka käyttöä testataan myös sen joustavien toiminnallisuuksien takia.
Vaikutusarviointiosiossa asiantuntijatietoa voidaan tiivistää tietokiteiksi, joissa täsmälliseen tutkimuskysymykseen (kuten tietyn toiminnan ilmastopäästöihin) etsitään tutkimustiedon perusteella paras vastaus. Tietokiteitä voidaan sitten käyttää arvioitaessa toimenpide-ehdotusten vaikuttavuutta, tehokkuutta ja muita vaikutuksia. Tähän työhön on käytettävissä THL:n ylläpitämä Opasnet-verkkotyötila. Lisäksi Sykellä on useita kehittyneitä ilmastolaskureita, joissa tosin tietojen koneellinen syöttäminen ja lukeminen vaatii kehittämistä. Tätä varten on alkamassa selvityshanke.
Helsingin päätöksenteko on jo nyt kuvattu Ahjo-järjestelmässä, jossa jokainen virallinen päätöksentekijä, asia ja päätös löytyvät avoimena datana. Päätösdata yhdistetään muuhun ilmasto-ohjelmaan käyttämällä Ahjon pysyviä tunnisteita eli URLeja.
Tästä järjestelmäkokonaisuudesta puuttuu vielä järjestelmä, joka pystyisi keräämään ja kuvaamaan kansalaisten ja päättäjien arvoja ja tavoitteita. Tällaista toiminnallisuutta on kuitenkin mietitty ja suunniteltu, esimerkiksi toukokuussa 2017 Demokratiahack-tapahtumassa kolmannen palkinnon sai Arvoprofiili-niminen idea. Idean jatkokehittely on parhaillaan käynnissä, ja erilaisia kokeiluja toivotaan Helsingin kaupunkiorganisaation kanssa käynnistettävän.
Perusteluissa on yksityiskohtaisesti käyty läpi toimenpideohjelman sisältöä, joka on tuotettu ympäristöpalvelujen toteuttamissa työpajoissa esiin nousseita toimenpide-ehdotuksista.
----arg4297: . Huom! Tilannekatsaus on demo eikä perustu oikeaan dataan. --Jouni Tuomisto (keskustelu) 7. joulukuuta 2018 kello 06.24 (UTC) (type: ; paradigms: science: comment)
+ Näytä koodi- Piilota koodi
# This is code Op_fi5767/ on page [[Hiilineutraali Helsinki 2035]]
library(OpasnetUtils)
objects.latest("Op_fi5767",code_name="hnhverkko") # [[Hiilineutraali Helsinki 2035]]
hnhverkko <- EvalOutput(hnhverkko)
gr <- makeGraph(hnhverkko)
render_graph(transform_to_subgraph_ws(gr))
# This is code Op_fi5767/ on page [[Hiilineutraali Helisnki 2035]]
toim <- Ovariable(
data=data.frame(
Action_id = 1:148,
Action = paste("Action text", 1:148),
Group = c(
rep("Kestävien kulkumuotojen käyttö",9),
rep("Liikenteen hinnoittelu", 4),
rep("Täydentyvä kaupunkirakenne",3),
rep("Ajoneuvoteknologian muutokset",7),
rep("Sataman päästöjen vähentäminen",2),
rep("Uudet liikkumispalvelut ja liikkumisen ohjaus",5),
rep("Kaupungin omistamat asuin- ja palvelurakennukset",24),
rep("Energiatehokas maankäyttö ja kuapunkirakenne",12),
rep("Energiarenessanssi",4),
rep("Uudet energiaratkaisut",12),
rep("Rahoitus ja kannustimet",5),
rep("Rakentamisen hiilijalanjäljen pienentäminen",2),
rep("Kuluttaminen ja hankinnat",33),
rep("Smart & Clean kasvu",7),
rep("Hiilinielut ja kompensointi",7),
rep("Sopeutuminen",1),
rep("Viestintä ja osallistuminen",3),
rep("Koordinointi, seuranta ja arviointi",8)
plan <- Ovariable(
Time = 2018:2028,
Result = (0:10)*0.1
) * Ovariable(data=data.frame(
actions <- Ovariable(
"actions",
Time = sample(2018:2035, 1000, replace = TRUE),
Action_id = sample(1:148,1000, replace=TRUE),
Result=0.2
progress <- Ovariable(
dependencies=data.frame(Name=c("actions","plan","toim")),
formula = function(...) {
out <- actions*toim
progress <- EvalOutput(progress)
toim$idgroup <- unlist(lapply(unique(toim$Group), FUN=function(x) {
rank(toim$Action_id[toim$Group==x], ties.method = "first")-1
tmp <- toim*0+1
tmp <- tmp*oapply(tmp, INDEX="Group", FUN=sum)
tmp$edge <- ceiling(sqrt(tmp$Result))
tmp$x <- tmp$idgroup %/% tmp$edge
tmp$y <- tmp$idgroup %% tmp$edge
pro <- c("aloittamatta","ajallaan", "myöhässä","pahasti myöhässä")
tmp$ajantasa <- sample(pro,nrow(tmp@output),replace=TRUE)
tmp$ajantasa <- factor(tmp$ajantasa, levels=pro)
tmp$eteneminen <- sample(c(0.2, 0.3, 0.4, 0.75, 1), nrow(tmp@output), replace=TRUE)
tmp$eteneminen[tmp$ajantasa=="aloittamatta"] <- 0.2
ggplot(tmp@output, aes(x=x, y=y, colour=ajantasa, size=eteneminen))+geom_point()+
facet_wrap(~ Group)+theme_gray(base_size=24)+
scale_colour_manual(values=c("gray","green","yellow","red"))+
coord_cartesian(xlim=c(-0.5,max(tmp$edge)-0.5),ylim=c(-0.5,max(tmp$edge)-0.5))+
theme(axis.text.x=element_blank(), axis.text.y=element_blank())+
labs(x="", y="")
Tällä sivulla on erityisesti tarkoitus esitellä mahdollisia tiedon jäsennysmenetelmiä, eivätkä sivulla esitetyt tiedot välttämättä ole ajan tasalla. Toimenpideohjelmaa kuvataan Ilmastoverkoston sivulla ja työstetään Google Drivessa, joten ajankohtainen tieto löytyy noilta sivuilta.
Hiilineutraali Helsinki 2035 -ohjelman toimenpiteet ja toimijat.
Hiilineutraali Helsinki 2035 -ohjelman osio liittyen lämmitys- ja sähköratkaisuihin.
Nykyinen toimijalistaus. ⇤--#: . Huomaa, että pienten kirjoituserojen takia tulee turhaa epäselvyyttä. Nämä pitäisi korjata. --Jouni Tuomisto (keskustelu) 17. heinäkuuta 2018 kello 05.43 (UTC) (type: truth; paradigms: science: attack)
Helsingin toimijat(-)
Relaatio
1 toimija Helsingin seudun ympäristöpalvelut HSY
2 toimija Rakennuttaminen Rake on osana Rya
3 toimija Alueidenkäyttö Alueidenkäyttö
4 toimija Aska Aska
5 toimija Asuntotuotanto ATT on osana Heka
6 toimija Auroranlinna Auroranlinna
7 toimija Ympäristöpalvelut Ympa on osana Palu
8 toimija Energiatehokkuustyöryhmä Energiatehokkuustyöryhmä
9 toimija Forum Virium Forum Virium
10 toimija Hanki Hanki
11 toimija Hankintojen ohjausryhmä Hankintojen ohry
12 toimija Hankintojen ympäristöryhmä Hankintojen ympr
13 toimija Hankintojen ympäristöverkosto Hankintojen ympv
14 toimija Haso Haso
15 toimija Hallinto- ja tukipalavelut Hatu on osana Palu
16 toimija Hankinnat Hankinnat on osana Hatu
17 toimija Lakiyksikkö Lakiyksikkö on osana Hatu
18 toimija HBH Hbh
19 toimija Helsingin kaupungin asunnot OY Heka
20 toimija Helen Sähköverkot Helen
21 toimija Helsingin Satama Oy Helsingin Satama
22 toimija Helsinki marketing Helsinki marketing
23 toimija Helsingin seudun liikenne HSL
24 toimija Ilmastoinfo Ilmastoinfo on osana HSY
25 toimija Infra Infra
26 toimija Kaikki toimialat Kaikki toimialat
27 toimija Kaikki liikelaitokset Kaikki liikelaitokset
28 toimija Kaupungin kanslia Kanslia
29 toimija 3D-kaupunkitietomalli 3D on osana Kanslia
30 toimija HANK HANK on osana Kanslia
31 toimija Aluerakentaminen Aluerakentaminen on osana Kanslia
32 toimija Elinkeino-osasto ELO on osana Kanslia
33 toimija Kilpailukykytiimi Kilpailukykytiimi on osana Kanslia
34 toimija Konsernihallinnon ohjaus Konsernihallinto on osana Kanslia
35 toimija Talous- ja suunnitteluosasto Taso on osana Kanslia
36 toimija Kasvatuksen ja koulutuksen toimiala Kasko
37 toimija Kaupunginmuseo Kaupunginmuseo
38 toimija Kirjastot Kirjastot
39 toimija Korkeasaari Korkeasaari
40 toimija Kuntayhtymät ja tytäryhteisöt Kuntayhtymät
41 toimija Kulttuurin ja vapaa-ajan toimiala Kuva
42 toimija Kaupunkiympäristön toimiala Kymp
43 toimija Kymp viestintä Kymp viestintä on osana Kymp
44 toimija Hallinto- ja tukipalvelut Hatu on osana Kymp
45 toimija Kepa ry Kepa on osana Kymp
46 toimija Liikkumispalvelupilotit Liikkumispalvelut
47 toimija Maankäyttö ja kaupunkirakenne –palvelukokonaisuus Maka
48 toimija Asemakaavoitus Aska on osana Maka
49 toimija Geo Geo on osana Maka
50 toimija Kaupunkitila- ja maisemasuunnittelu KAMU on osana Maka
51 toimija Liikenne- ja katusuunnittelu Lika on osana Maka
52 toimija Maaomaisuuden kehittäminen ja tontit Make on osana Maka
53 toimija Maankäytön yleissuunnittelu Myle on osana Maka
54 toimija Muut kunnat Muut kunnat
55 toimija Nuorisopalvelut Nuorisopalvelut
56 toimija Palmia oy Palmia
57 toimija Palvelut ja luvat -palvelukokonaisuus Palu
58 toimija Rakennusvalvonta palvelut Rava on osana Palu
59 toimija Palvelukeskus Palvelukeskus on osana Palu
60 toimija Pääkaupunkiseudun kierrätyskeskus Oy Kierrätyskeskus
61 toimija Rakennetun omaisuuden hallinta Roha on osana Rya
62 toimija Ruokapalvelu Ruokapalvelu
63 toimija Rakennukset ja yleiset alueet –palvelukokonaisuus Rya
64 toimija Ylläpito Ylpi on osana Rya
65 toimija Tilapalvelut Tila on osana Rya
66 toimija Yleiset alueet Yleiset alueet on osana Rya
67 toimija Smart&Clean Smart&Clean
68 toimija Sosiaali- ja terveydenhuolto Sote
69 toimija Pakilan työkeskus Pakila on osana Sote
70 toimija Terveyden ja hyvinvoinnin laitos THL
71 toimija Stara logistiikka Stara
72 toimija Suomen- ja ruotsinkieliset työväenopistot Työväenopistot
73 toimija Sähkön tilaajayksiköt Sähköntilaajayksiköt
74 toimija Toimialojen hankintaryhmät Hankintaryhmät
75 toimija Tukkutori Tukkutori
76 toimija Tutkimuslaitokset Tutkimuslaitokset
77 toimija Yhteinen pöytä -toimi Yhteinen pöytä
78 toimija Harakka Harakka on osana Ympa
79 toimija Yritysneuvot Yritysneuvot on osana Kanslia
Tiedot toimenpiteistä. ----arg3629: . Tämän tiedon voisi siirtää ghseetiin samaan taulukkoon kuin muut toimenpiteiden tiedot. --Jouni Tuomisto (keskustelu) 10. elokuuta 2018 kello 13.20 (UTC) (type: ; paradigms: science: comment)
Toimenpiteiden linkit(-)
Seurantasivu
1 HNH2035.1 Liikenteen solmukohtien palvelutarjontaa ja vaihtojen sujuvuutta parannetaan https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=0
2 HNH2035.2 Pyöräliikenteen kantakaupungin tavoiteverkko valmistuu 2025 mennessä https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=254270846
3 HNH2035.66 Energiarenessanssi-ohjelma https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1110582574
4 HNH2035.67 selvitys öljylämmityksen poistamiseksi https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=284082830
5 HNH2035.68 3D-mallin kehitys https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1388815213
6 HNH2035.69 parannetaan taloyhtiöpäättäjien osaamista https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1531611149
Tässä taulukossa on lueteltu niiden olioiden Oldid, joiden URLeista halutaan kerätä seurantadataa.
Seurantadata(-)
1 HNH2035.1 Liikenteen solmukohtien palvelutarjontaa ja vaihtojen sujuvuutta parannetaan https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=0 3
2 HNH2035.2 Pyöräliikenteen kantakaupungin tavoiteverkko valmistuu 2025 mennessä https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=254270846 3
3 HNH2035.18 Sähköautojen latausinfran rakentaminen https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=2099090707 3
4 HNH2035.66 Energiarenessanssi-ohjelma https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1110582574 3
5 HNH2035.67 selvitys öljylämmityksen poistamiseksi https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=284082830 3
6 HNH2035.68 3D-mallin kehitys https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1388815213 3
7 HNH2035.69 parannetaan taloyhtiöpäättäjien osaamista https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1531611149 3
8 Ilmasto.58 lämmön kokonaiskulutus https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1394410144 3
9 Ilmasto.59 kulutussähkön määrä https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1071803243 3
10 Ilmasto.60 paikallisesti tuotettu sähkö https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=415041273 3
11 Ilmasto.61 hukkalämmön määrä https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1011858407 3
12 Ilmasto.62 paikallisesti tuotettu lämpö https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1756607272 3
13 Ilmasto.63 sähkön kysyntäjousto https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1126594145 3
14 Ilmasto.64 lämmön kysyntäjousto https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=717853677 3
Datan jalostaminen
Tarkoitus on hyödyntää datan lähtökohtana esim. google sheetiä siten, että tiedot haetaan ja jalostetaan dynaamisesti eli alkuperäisen tiedoston muokkaamista voi jatkaa ilman, että datavirta katkeaa. Linkin avulla tietoon voi viitata pysyvästi. Huomaa, että itse tietosisältö voi muuttua, mutta aihe säilyy ja linkki vie aina sivulle, jossa kuvataan Hiilineutraali Helsinki 2035 -toimenpideohjelman liikennetavoitteita.
Tietoa rikastetaan liittämällä siihen lisätietoa, kuten linkkejä (Sustainable urban mobility plan (SUMP), HSL:n kalustoskenaario, Kaupunkistrategia 2017-2021, Sähköisen liikenteen kehittämisohjelma, Kaupunginjohtajan päätös lausunnosta koskien liikennepalvelulain esitystä).
Seuraavaksi tieto muutetaan automaattisesti rakenteelliseksi siten, että alkuperäisen taulukon riveistä muodostetaan erillisiä, viittauskelpoisia tieto-olioita. Osa rivin sisällöstä sijoitetaan muodostettavaan olioon itseensä, osa taas muutetaan relaatioiksi toisiin tieto-olioihin kuten organisaatiotietoihin. Näin esimerkiksi voidaan tunnistaa kaikki tiettyyn toimenpiteeseen liittyvät toimijat ja tehdä listaus kaikista jonkin toimijan vastuulla olevista asioista. Google sheetissä tämä olisi työlästä ja jäisi tekemättä.
Vertailun vuoksi: Ahjossa on jokaisella päättäjällä, asialla ja päätöksellä oma tunniste, ja näihin on syytä linkata mahdollisuuksien mukaan.
Kaupunginjohtaja https://dev.hel.fi/paatokset/paattaja/11010vh1/
Lausunto liikennepalvelulain esityksestä https://dev.hel.fi/paatokset/asia/hel-2017-005140/
Kaupunginjohtajan päätös kyseistä lausunnosta https://dev.hel.fi/paatokset/paattaja/11010vh1/2017/72/
Rakenteistaminen onnistuu automaattisesti, kun tiedot alunperin kirjoitaan yhdenmukaisesti. Silloin se voidaan myös päivittää tietojen muuttuessa. Tällainen rakenteistamiskoodi löytyy sivulta Ympäristöterveysindikaattori#Laskenta.
Toiminnassa pyritään siihen, että tiedot ovat selkeitä, johdonmukaisia ja yhdenmukaisia. Tätä varten vakioidaan se, mitä tietoja kustakin tavoitteesta tai toimenpiteestä kerätään. Tässä on kuvattu lähtötietojen sarakkeet ja niiden sisällöt (ehdotus). Tarkempi kuvaus löytyy täältä. Tietoja kerätään google sheetille. Taulukossa mainitut relaatiot tarkoittavat tietoa siitä, että kaksi asiaa (esimerkiksi toimenpide ja tavoite) liittyvät toisiinsa tietyllä tavalla.
Sisältövaihtoehdot sarakkeissa, joissa on etukäteen määrätyt vaihtoehdot.
1. hankinnat, 2. infra, 3. kaupungin käytännöt, 4. kaupunki testialustana, 5. maankäyttö, 6. ohjaus, 7. rahoitus ja kannustimet, 8. uudet palvelut, 9. viestintä ja neuvonta, 10. seuranta
Toimenpideluokka
Rakentaminen: 1. Elinkaaripäästöt 2. Hukkalämmön talteenotto 3. Lämmön energiatehokkuus 4. Paikallinen lämmöntuotanto 5. Sähkön energiatehokkuus 6. Paikallinen sähköntuotanto 7. Lämmön kysyntäjousto 8. Sähkön kysyntäjousto 9. Ulkovalaistus 10. Öljyn käytön vähentäminen 11. Vihreän sähkön hankinta 12. Vihreän lämmön hankinta 13. Suunnitelmat ja ohjelmat 14. Kaupunki testialustana 15. Viestintä ja koulutus 16. suunnittelun työkalut
Liikenne: 1. ajoneuvoliikenteen hinnoittelu (ruuhkamaksut) 2. uudet liikkumispalvelut (ja muut mahdolliset henkilöautojen kuormitusta nostavat toimenpiteet) 3. pysäköintikustannusten kasvattaminen 4. pyöräilyn kulkutapaosuuden kasvu 5. joukkoliikenteen palvelutason nosto (hinta, vuoroväli, mukavuus) 6. henkilöliikenteen teknologia (sähkö, energiatehokkuus) 7. raskaan liikenteen teknologia (energiatehokkuus, täyttöaste) 8. maankäytön muutokset 9. biopolttoaineet 10 työkoneiden teknologia 11. satamien teknologia 12. suunnitelmat ja ohjelmat 13 MUU(Ei sovellu)
Ohjelmapäätös
Kyllä, Tyhjä
1=tämä valtuusto (2018-2019), 2=seuraava valtuusto (2019-2023), 3=myöhemmin (2013- )
Kerää ja varastoi masterdata
Tämän koodin keräämiä datoja voit tarkastella täältä.
# This is code Op_fi5767/master on page [[Hiilineutraali Helsinki 2035]]
objects.latest("Op_en3861",code_name="scrape.functions")
# objects.latest("Op_fi5849",code_name="preprocess") # In case we want to extract URLs from insight network
meta <- opbase.data("Op_fi5767", subset="Seurantadata")
for(i in colnames(meta)) {meta[[i]] <- as.character(meta[[i]])}
meta$Result <- as.numeric(meta$Result)
coln <- c("Kohde", "Mittari", "Aika", "Skenaario", "Tulos", "Yksikkö", "Kuvaus", "Perustelu", "Leima")
# meta$URL2 <- gr$nodes_df$URL[match(meta$Oldid, gr$nodes_df$Oldid)]
# print(meta)
out <- data.frame()
for(i in 1:nrow(meta)) {
print(meta$Nimi[i])
tmp <- scrape.gssheet(meta$URL[i], meta$Result[i])
#  tmp <- tryCatch(scrape.gssheet(gr$nodes_df$URL[match(meta$Oldid[i], gr$nodes_df$Oldid)], meta$Result[i]))
if(nrow(tmp)>0) {
colnames(tmp) <- coln
tmp <- data.frame(Oldid=meta$Oldid[i],Konteksti=meta$Nimi[i],tmp)
if(nrow(out)>0) out <- orbind(out, tmp) else out <- tmp}
out[is.na(colnames(out))] <- NULL # Remove unnamed columns if any
opbase.upload(
"Op_fi5767",
name="Hiilineutraali Helsinki 2035",
subset="Masterdata",
language="fin",
rescol="Tulos",
who=wiki_username
cat("Masterdata onnistuneesti tallennettu.\n")
Jalosta masterdataa malleja varten
# This is code Op_fi5767/tpv on page [[Hiilineutraali Helsinki 2035]]
tpv <- opbase.data("Op_fi5767", subset="Masterdata")
tpv$Skenaario[tpv$Skenaario %in% c("NA","toteuma")] <- NA
tpv <- tpv[!(tpv$Skenaario=="varaus" & tpv$Kuvaus=="Perustaso" & !is.na(tpv$Kuvaus)),] # What is this?
tpv <- tpv[!colnames(tpv) %in% c("Leima","Perustelu","Kuvaus")]
tpv$Aika <- as.numeric(as.character(tpv$Aika))
levels(tpv$Skenaario)[levels(tpv$Skenaario) %in% c("toteuma","varaus")] <- "tätä menoa"
tpv <- fillna(tpv, "Skenaario")
#> colnames(tpv)
#[1] "Oldid"     "Konteksti" "Kohde"     "Mittari"   "Aika"      "Skenaario"
#[7] "Yksikkö"   "Result"
colnames(tpv) <- c("Oldid","Context","Target","Metric","Year",
"Scenario","Unit","Result")
objects.store(tpv)
cat("Data.frame tpv tallennettu.\n")
Kerää toimenpide- ja vaikutustiedot
Tämä koodi kerää seurantatiedot avoimista nettitaulukoista ja tallentaa ne yhteen paikkaan jatkotyöstettäväksi. Toistaiseksi tämä on ajettava omalla koneella eikä Opasnetissä, mutta tähän tullee parannus lähiaikoina.
HNH2035toimenpideseuranta Toimenpiteiden toteuma sekä ennakoidut ja toteutuneet vaikutukset.
# This is code Op_fi5767/followup on page [[Hiilineutraali Helsinki 2035]]
library(gsheet)
objects.latest("Op_fi5810", code_name="graphs") # [[Ympäristöterveysindikaattori]] graafilista
# Some preliminary tests to read google docs. Not very successful yet, so we use google sheets for now.
wdat <- read_html("https://docs.google.com/document/d/1XBDOvh_rIgY8hF7VBITtLeImb9rPnXx4F-4d5u0LJCw/edit")
html_table(wdat) # Does NOT read Google documents properly.
html_text(html_nodes(wdat, css="dt")) # Does NOT read Google document properly
html_text(wdat)
write(html_text(wdat), "googlthtml.txt") # Does NOT read Google document properly
# library(RGoogleDocs) # Active in 2012; not found from Cran any more.
library(googledrive)
# library(plusser) # An interface for Google+. Is this useful?
files <- drive_get("~/VAIKUTUSARVIOINTITYÖKALU")
files$drive_resource
drive_download("~/VAIKUTUSARVIOINTITYÖKALU/HNH2035tp001", type="txt", overwrite=TRUE) # Works but formatting is oversimplistic
drive_download("~/VAIKUTUSARVIOINTITYÖKALU/HNH2035tp001", type="odt", overwrite=TRUE) # seems to work well. But how to operate with odt?
odat <- read_html(unz("HNH2035tp001.odt","content.xml")) # Converts odt to xml. It uses untypical tags, though.
html_text(xml_nodes(odat, css="p"))
html_text(xml_nodes(odat, css="table"))
html_table(odat, fill=TRUE) # Does NOT work
tpv <- data.frame()
tmp2 <- gsheet2tbl(graafilista[[1]]$URL[match(paste0("HNH2035tp.",i),graafilista[[1]]$Oldid)])
id <- colnames(tmp2)[2] # This should be taken from metatable rather then gsheet.
colnames(tmp2) <- tmp2[1,]
tmp2 <- as.data.frame(tmp2[-1,1:8]) # Columns sliced because it is very easy to add text to other columns in gsheets. As.data.frame is used to get rid of tibble.
tmp2$Toimenpide <- id
colnames(tmp2)[colnames(tmp2)=="Yksikkö"] <- "Unit"
colnames(tmp2)[colnames(tmp2)=="Tulos"] <- "Result"
tpv <- rbind(tpv, tmp2)
write.csv(tpv, "HNH2035toimenpideseuranta.csv", quote=TRUE, row.names=FALSE, fileEncoding="UTF-8")
Piirrä näkemysverkko
hnhverkko on uudempi versio häkemysverkosta ja toimii uusilla tammikuun 2019 määrittelyillä.
# This is code Op_fi5767/nakemysverkko on page [[Hiilineutraali Helsinki 2035]]
# library(DiagrammeRsvg)´# This is needed if the graph is saved as svg with export_graph()
hnhverkko <- Ovariable(
"hnhverkko",
dependencies = data.frame( # From [[Insight network]]
Name=c("scrape.gssheet","makeGraph"),
Ident=c("Op_en3861/scrape.functions","Op_en3861/makeGraph")
out <- scrape.gssheet(
page="https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1376210298",
firstrow=5
out <- out[c(1,3,7,4,5,6,1,1,1,1)]
colnames(out) <- c(
"label",
"Reldescription",
out$Context <- "HNH"
out[c("Description","Reldescription","URL")] <- ""
out$Result <- 0
out <- out[!(is.na(out$Item) & is.na(out$label)) , ]
hnhverkko@meta$insightnetwork <- list(
addnodes = "",
addnodesByid = c(159,160),
removenodes = "",
formatting = "",
ignoreobj = "",
objects.store(hnhverkko)
cat("Ovariable hnhverkko tallennettu.\n")
#################### First part: heating and electricity consumption
objects.latest("Op_en3861",code_name="scrape.functions") # [[Insight network]]
objects.latest("Op_en3861",code_name="makeGraph") # [[Insight network]]
dat <- scrape.gssheet(
"https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=145667980",
3)[-c(6,7)]
colnames(dat) <- c("type","Item","label","rel","Object")
gr <- makeGraph(dat)
render_graph(gr)
export_graph(gr, "HNH2035 lämmitys- ja sähköratkaisut.svg")
####################### Second part: action plan? MAY NEED UPDATING
objects.latest("Op_en3861", code_name="insightNetwork") # [[Insight network]] insightNetwork.  Contains list of objects needed
#objects.latest("Op_en3861",code_name="ui") # [[Insight network]] ui # These are listed in insightNetwork
#objects.latest("Op_en3861",code_name="server") # [[Insight network]] server, chooseGr
# If you want to use alternative objects, fetch them here.
meta <- Ovariable(
"meta",
Name = "HNH2035",
Description = "Hiilineutraali Helsinki 2035",
Id = "HNH",
Type = "keskustelu",
Table = "",
Firstrow = 5,
URL = "https://docs.google.com/spreadsheets/d/1nCJwaFQ2PEcPhJ2jnfGJSj1JK36KczGObuLNxKBSFfw/edit#gid=1376210298",
Numbering = 1,
PRLtrunk = ""
cat("The network data comes from these sources:\n")
oprint(meta@data)
insightNetwork <- EvalOutput(insightNetwork,verbose=TRUE)
cat("This code uses the following objects:\n")
oprint(insightNetwork@dependencies)
insightTables <- makeInsightTables(meta) # Fetches the data from their original sources. You can update (part of) insightTables by rerunning with (partial) meta.
graphTable <- makeGraphTable(verbose=FALSE) # Produces a table in standard format for insight networks
graphTable <- graphTable[!(is.na(graphTable$Item) & is.na(graphTable$label)),]
#graphTable$Oldid <- paste0("HNH.",1:nrow(graphTable))
graphTable$Oldid <- graphTable$type
graphTable$type <- c(rep("action",147),rep("substance",nrow(graphTable)-147))
graphTable$type[graphTable$label %in% c("khk-päästö","ilmansaastepäästö")] <- "objective"
gr <- makeInsightGraph(graphTable) # Creates a DiagrammeR graph object
seeds <- Ovariable(data=data.frame(Node=0,Topic=0))
input <- list(
topic="",
addnodesByOldid=c("HNH.159","HNH.161"),
removenodes="",
formatting="",
ignoreobj="",
steps=4
gr2 <- chooseGr(gr, input, seeds)
gr2$nodes_df$label <- gsub("(.{1,18})(\\s|$)", "\\1\n", gr2$nodes_df$label) # Cut labels to max 18 characters long on one line (except if a word is longer)
# Alternative possibility is to use strwrap function from {base} or stri_wrap from stringi.
if("Hide node labels" %in% input$formatting) gr2$nodes_df$label <- ""
if("Hide edge labels" %in% input$formatting) gr2$edges_df$label <- " "
gr2 <- transform_to_subgraph_ws(gr2)
# Choose one or more output formats
render_graph(gr2)
# objects.store(gr2)
# cat(Rendered graph object gr2 stored.\n")
# export_graph(gr2, "HNH2035_syykaavio.svg")
# shinyApp(ui, server, enableBookmarking = "url")
Tarkastele vaikutuksia
Tämä koodi ottaa kootut seurantatiedot ja laskee niistä erilaisia tunnuslukuja ja seurantakaavioita. Malliajolinkeistä pääsee suoraan valmiiksi laskettuihin tuloksiin.
Malliajo 11.8.2018 [2]
Malliajo 17.9.2018 [3]
BS <- 24
if(!exists("tpv")) {
tpv <- opasnet.csv("2/2a/HNH2035toimenpideseuranta.csv", wiki="opasnet_fi",
sep=",",row.names=NULL,header=TRUE,stringsAsFactors=FALSE,fileEncoding = "UTF-8"
tpv <- tpv[!(tpv$Skenaario=="varaus" & tpv$Kuvaus=="Perustaso" & !is.na(tpv$Kuvaus)),]
tpv$Aika <- as.numeric(tpv$Aika)
tpv$Skenaario <- as.factor(tpv$Skenaario)
oprint(tpv)
# levels(tpv$Skenaario)
# [1] "BAU"     "HNH2035" "toteuma" "varaus"
levels(tpv$Skenaario) <- c("BAU", "HNH2035","Tätä menoa","Tätä menoa")
colnames(tpv)[colnames(tpv)=="Vaikutus"] <- "Mittari" # Needed until code updated
kustannukset <- Ovariable(
"kustannukset",
data = tpv[tpv$Mittari=="kustannukset",-(7:8)] # Remove Kuvaus and Perustelut
kustannukset <- EvalOutput(kustannukset)
# Not very clever graph because sums up all time points.
ggplot(kustannukset@output, aes(x=kustannuksetResult, colour=Skenaario))+stat_ecdf()+facet_wrap(~Aika)+
theme_gray(base_size=BS)+
labs(title="HNH2035-ohjelman kustannukset epävarmuuksineen vuosittain",x="Kumulatiiviset kustannukset (k€)",y="Kumulatiivinen todennäköisyys")
kust <- kustannukset
kust <- oapply(oapply(kust, cols="Iter", FUN=mean), cols="Toimenpide",FUN=sum)
ggplot(kust@output, aes(x=Aika, y=kustannuksetResult, colour=Skenaario, group=Skenaario))+geom_line()+
labs(title="HNH2035-ohjelman kustannukset",y="Kumulatiiviset kustannukset (k€)")
objects.latest("Op_fi5767", code_name="ilmpaasto") # [[Hiilineutraali Helsinki 2035]] ilmpaasto
ilmpaasto <- EvalOutput(ilmpaasto)
ilmpaasto <- oapply(oapply(ilmpaasto, cols="Iter", FUN=mean), cols=c("Toimenpide","Kohde","Mittari"),FUN=sum)
ggplot(ilmpaasto@output, aes(x=Aika, y=ilmpaastoResult, colour=Skenaario, group=Skenaario))+geom_line()+
facet_wrap(~ Pollutant, scales="free_y")+
labs(title="Ilmasto- ja pienhiukkaspäästöt",y="Kumulatiiviset ilmastopäästöt (kton CO2ekv)")
pyorkm <- Ovariable(
"pyorkm",
data = tpv[grepl("ilym", tpv$Mittari),-(7:8)] # Remove Kuvaus
pyorkm <- EvalOutput(pyorkm)
pyorkm <- oapply(oapply(pyorkm, cols="Iter", FUN=mean), cols="Toimenpide",FUN=sum)
ggplot(pyorkm@output, aes(x=Aika, y=pyorkmResult, colour=Skenaario, group=Skenaario))+geom_line()+
labs(title="Pyöräilykilometrit",y="Pyöräilykilometrit (km/hlö/a)")
Tämä koodi tuottaa osamallin ilmastopäästöjen laskemiseksi pyöräilykilometreille ja muille vaikutuksille.
# This is code Op_fi5767/ilmpaasto on page [[Hiilineutraali Helsinki 2035]]
ilmpaasto <- Ovariable(
"ilmpaasto",
dependencies = data.frame(
Name=c("tpv","emfactor"),
Ident=c(NA,"Op_en2989/emfactor")
formula=function(...) {
muuvaik <- EvalOutput(Ovariable(
"muuvaik",
data = tpv[grepl("ilmastop",tpv$Mittari),-(7:8)] # Remove Kuvaus and Perustelut
muuvaik$Pollutant <- "CO2"
pyorkm <- EvalOutput(Ovariable(
data = tpv[grepl("ilym",tpv$Mittari),-(7:8)]
pyorkm$Vehicle <- "Bike"
pyorem <- pyorkm * emfactor / 1000 # g/person -> kton/1M people
out <- combine(pyorem,muuvaik)
out <- oapply(out, cols=c("Vehicle","pyorkmSource","emfactorSource","Source","ilmpaastoSource"),FUN=sum)
objects.store(ilmpaasto)
cat("Ovariable ilmpaasto stored.\n")
Mittarit Helsingin energiapäätöksestä 2015
Tämä koodi on muokattu mallista op_en:Helsinki energy decision 2015#Preference_order siten, että sillä on tuotettu HNH2035-ohjelmaan seuraavat mittarit:
Helsingin rakennusala [4]
Rakenusala rakennustyypeittäin [5]
Rakennusala lämmitysmuodoittain [6]
Helsingin energiantuotantokapasiteetti [7]
Kaupungin omistamien kiinteistöjen ominaislämmönkulutus [8]
Ominaislämmönkulutuksen väheneminen peruskorjauksessa [9]
Uusien rakennusten ominsialämmönkulutus [10]
Kiinteistöjen ominaislämmönkulutus [11]
Helsingin energiatase [12]
Rakennuskannan lämmönkulutus [13]
Kaukolämmöntuotannon kasvihuonekaasupäästöt [14]
Helsingin kaupungin ilmansaastepäästöt [15]
Altistuminen ilmansaasteille [16]
Ympäristöterveyden tautitaakka [17]
# This code is Op_fi5767/energybalance on page [[Hiilineutraali Helsinki 2035]]
# This code is a fork of Op_en7237/finalresults on page [[Helsinki energy decision 215]]
library(thlVerse)
# Get pushIndicatorGraph from https://github.com/jtuomist/CNH-energy (file pushAplans.R)
objects.latest("Op_en6007", code_name="hnh2035") # [[OpasnetUtils/Drafts]] combineLines
objects.latest("Op_en6007", code_name = "miscellaneous") # [[OpasnetUtils/Drafts]] truncateIndex
openv.setN(0) # use medians instead of whole sampled distributions
noshutdown <- c(
'Biofuel heat plants',
'Household air conditioning',
'Katri Vala cooling',
'Katri Vala heat',
'Kellosaari back-up plant',
'Salmisaari A&B',
'Small fuel oil heat plants',
'Small gas heat plants',
'Small-scale wood burning',
'Suvilahti power storage',
'Suvilahti solar',
'Vanhakaupunki museum',
'Vuosaari A',
'Vuosaari B',
'Vuosaari C biofuel'
renovation <- NULL
# Download all pre-calculated inputs, e.g. building stock.
objects.latest("Op_en7237", code_name = "intermediates") # [[Helsinki energy decision 2015]]
objects.latest("Op_en7392", code_name = "translate") # [[OpasnetUtils/Translate]] translate
objects.latest("Op_en7392", code_name = "dictionary") # [[OpasnetUtils/Translate]] dictionary
BSbase <- 24 # base_size for graph fonts. Use 12 if you use savefig to sav svg fils.
BS <- BSbase
saveobjects <- FALSE
savefigs <- FALSE
language <- "Finnish"
fi <- language == "Finnish"
savefig <- function(
path = "N:/YMAL/Publications/2015/Helsingin energiapäätös/Kuvat/",
sav = if(exists("savefigs")) savefigs else FALSE,
type = "svg",
height = 18,
width = 24,
units = "cm"
if(sav) {
ggsave(paste(path, fil, ".", type, sep = ""), height = height, width = width, units = units)
allplants <- c(
'CHP diesel generators',
'Data center heat',
'Deep-drill heat',
'Hanasaari',
'Household air heat pumps',
'Household geothermal heat',
'Household solar',
'Loviisa nuclear heat',
'Neste oil refinery heat',
'Salmisaari biofuel renovation',
'Sea heat pump',
'Sea heat pump for cooling',
'Vuosaari C biofuel',
'Wind mills'
shutdown <- allplants[!allplants %in% noshutdown]
shutdown <- c(shutdown, "None")
customdecisions <- data.frame(
Obs = NA,
Decision_maker = "Helen",
Decision = "PlantPolicy",
Option = "Custom",
Variable = c("plantParameters", "energyProcess"),
Cell = c(
paste("Plant:", paste(shutdown, collapse = ","), ";Parameter:Max,Min,Investment cost;Time:>2015", sep = ""),
Change = c("Replace", "Identity"),
Unit = NA,
decisions <- rbind(decisions, customdecisions)
if ("Hanasaari" %in% renovation) {
Variable = rep(c("plantParameters", "energyProcess"), each = 2),
"Plant:Hanasaari;Time:>=2018;Time:<=2060;Parameter:Max",
"Plant:Hanasaari;Time:>=2018;Parameter:Investment cost",
"Plant:Hanasaari;Fuel:Biofuel;Time:>=2018",
"Plant:Hanasaari;Fuel:Coal;Time:>=2018"
Change = rep(c("Replace", "Add"), each = 2),
Result = c(640, 100, -0.40, 0.40)
DecisionTableParser(decisions)
oprint(data.frame(
Running = c(
"These plants will be running in the custom plant policy:",
paste(allplants[!allplants %in% shutdown], collapse = ", ")
Shutdown = c(
"Plants that will be shut down in the custom plant policy:",
paste(shutdown, collapse = ", ")
EnergyNetworkDemand <- EvalOutput(EnergyNetworkDemand)
EnergyNetworkDemand@output <- rbind(
EnergyNetworkDemand@output,
Time = rep(c(2025, 2035, 2045, 2055, 2065), each = 4),
EnergySavingPolicy = rep(c("BAU", "Energy saving moderate", "Energy saving total", "WWF energy saving"), times = 5),
Temperature = "(-18,-15]",
EnergyConsumerDemandSource = "Formula",
EnergyConsumerDemandTotalSource = "Formula",
Fuel = "Cooling",
fuelSharesSource = "Formula",
EnergyNetworkDemandResult = 0,
EnergyNetworkDemandSource = "Formula"
#cat("All energy taxes are assumed zero.\n")
#objects.latest("Op_en4151", code_name = "fuelTax")
#fuelTax <- EvalOutput(fuelTax)
#result(fuelTax) <- 0
fuelUse <- EvalOutput(fuelUse)
fuelUse$Fuel <- factor(
fuelUse$Fuel, levels = c(
"Biofuel",
"Coal",
"Fuel oil",
"Light oil",
"Electricity",
"Electricity_taxed",
"Heat",
), ordered = TRUE
DALY <- EvalOutput(DALYs)
DALYs <- unkeep(DALY, cols = c("Age", "Sex", "Population"))
DALYs <- oapply(DALYs, cols = c("Emission_site", "Emission_height", "Area"), FUN = sum)
DALYs <- DALYs[DALYs$Response == "Total mortality" , ]
EnergyNetworkCost <- EvalOutput(EnergyNetworkCost)
EnergyNetworkCost$Time <- as.numeric(as.character(EnergyNetworkCost$Time))
totalCost <- EvalOutput(totalCost)
totalCost@output$Time <- as.numeric(as.character(totalCost@output$Time))
totalCost <- unkeep(totalCost[totalCost$Time >= 2015 & totalCost$Time <=2065 , ], sources = TRUE)
# Net present value and effective annual cost
discount <- 0.03
times <- c(2015, 2065)
EAC <- EvalOutput(EAC)
if(saveobjects) {
objects.store(list = ls())
cat("All objects stored for later use:\n", paste(ls(), collapse = ", "), "\n")
############## POST_PROCESSING AND GRAPHS, VERSION FROM PERFERENCE ANALYSIS
##### Plotly graphs for HNH2035.
BAU <- Ovariable(
"BAU",
EnergySavingPolicy = "BAU",
PlantPolicy = "BAU",
#### 68 Helsingin rakennusala
tmp <- oapply(buildings * BAU, c("Time","Heating"),sum)
pushIndicatorGraph(
plot_ly(tmp@output, x = ~Time, y = ~Result, color = ~Heating, type = "bar") %>%
barmode = "stack",
title = "Rakennusala lämmitysmuodoittain",
xaxis = list(title="Vuosi"),
yaxis = list(title="Rakennusala (m^2)")),
# Why is this installation here?
devtools::install_github('fbc-studies/fbcutils')
library(fbcutils)
ggplot((tmp*10^-6)@output, aes(x=Time, weight=Result, fill=Heating))+geom_bar(position="stack")+
x = "Vuosi",
y = "Rakennusala (M m^2)"
theme_thl()
scale_fill_thl(palette = "Blues")
#### 12 Rakennusala rakennustyypeittäin
tmp <- truncateIndex(buildings,"Building",6)
colnames(tmp@output)[colnames(tmp@output)=="EnergySavingPolicy"] <- "Scenario"
#> unique(tmp$Scenario)
#[1] BAU                    Energy saving moderate Energy saving total
#[4] WWF energy saving
levels(tmp$Scenario) <- c("BAU","NA","tavoite","NA")
tmp <- tmp[tmp$Scenario!="NA",]
plot_ly(
oapply(tmp[tmp$Scenario=="BAU",], c("Building","Time"),sum)@output,
x = ~Time, y = ~buildingsResult, color = ~Building,
type = 'scatter', mode = 'lines') %>%
title="Rakennusala talotyypeittäin",
xaxis=list(title="Vuosi"),
yaxis=list(title="Rakennusala (m2)")
#### 13 Rakennusala lämmitysmuodoittain
oapply(tmp[tmp$Scenario=="BAU",], c("Heating","Time"),sum)@output,
x = ~Time, y = ~buildingsResult, color = ~Heating,
title="Rakennusala lämmitysmuodoittain",
#### 70 Helsingin energiantuotantokapasiteetti
tmp <- oapply(plantParameters[
plantParameters$Parameter=="Max" &
plantParameters$PlantPolicy %in% c("BAU","Helen proposition") &
plantParameters$Time > 1986 & plantParameters$Time < 2061,],
c("Time","PlantPolicy"), sum
)@output
tmp$PlantPolicy <- ifelse(tmp$PlantPolicy=="Helen proposition","Hanasaari kiinni 2020","BAU")
### SMALL FUEL OIL HEAT PLANTS DIFFER IN HISTORY IN BAU AND HELEN PROPOSITION. FIX IT!
x = ~Time, y = ~plantParametersResult, color = ~PlantPolicy,
title="Helsingin energiantuotantokapasiteetti",
yaxis=list(title="Maksimikapasiteetti (GW)")
#### 4 Kaupungin omistamien kiinteistöjen ominaislämmönkulutus
# Tämä tulee datasta ja Juhan tekemästä tietokiteestä.
#### 36 Ominaislämmönkulutuksen väheneminen peruskorjauksessa
renovationRatio@output,
x = ~Renovation, y = ~renovationRatioResult*100, color = ~Renovation,
type = 'bar') %>%
title="Suhteellinen ominaislämmönkulutus remontin jälkeen",
xaxis=list(title="Remonttityyppi"),
yaxis=list(title="Ominaislämmönkulutus (%)")
#### 51 Uusien rakennusten ominaislämmönkulutus
tmp <- temperene[temperene$Consumable=="Heating",] * efficiencyRatio
tmp@output,
x = ~Efficiency, y = ~Result, color = ~Efficiency,
title="Ominaislämmönkulutus uusissa rakennuksissa",
xaxis=list(title="Energialuokka"),
yaxis=list(title="Ominaislämmönkulutus (W/m^2/K)")
#### 37 Taloyhtiöiden omistamien kiinteistöjen ominaislämmönkulutus
# Helsinki energy decision 2015 ei tarkastellut omistuksen mukaan joten tätä ei nyt työstetä.
#### 72 Kiinteistöjen ominaislämmönkulutus
tmp <- temperene[temperene$Consumable=="Heating",] * efficiencyRatio * renovationRatio
x = ~Efficiency, y = ~Result, color = ~Renovation,
title="Ominaislämmönkulutus olemassaolevissa rakennuksissa",
#### 71 Helsingin energiatase
tmp <- truncateIndex(
oapply(
fuelUse[
fuelUse$PlantPolicy %in% c("BAU","Helen proposition") &
fuelUse$EnergySavingPolicy=="BAU" &
fuelUse$Fuel=="Heat",],
c("Time","PlantPolicy","Fuel","Plant"),sum),
"Plant", 7
) / -3.6E+6 # From MJ/a -> GWh/a
result(tmp) <- pmax(0,result(tmp))
tmp@output[tmp$PlantPolicy=="BAU",],
x = ~Time, y = ~fuelUseResult, color = ~Plant,
title="Voimaloiden käyttö optimaalisella tuotantojoustolla",
yaxis=list(title="Tuotanto (GWh/a)")
#### 69 Rakennuskannan lämmönkulutus
tmp <- EnergyConsumerDemandTotal[
EnergyConsumerDemandTotal$EnergySavingPolicy=="BAU" &
EnergyConsumerDemandTotal$Consumable=="Heat",]
tmp <- tmp * temperdays * 24 * 1E-3 # MW -> GWh
tmp <- oapply(tmp, c("Heating","Consumable","Time"),sum)@output
x = ~Time, y = ~Result, color = ~Heating,
title="Lämmönkulutus lämmitysmuodoittain",
yaxis=list(title="Kulutus (GWh/a)")
#### 9 Kaukolämmöntuotannon päästökerroin
# Juhalla on tästä historiallinen kuva, mutta tietokide on Emission factors for burning processes.
#### 38 Taloyhtiöiden omistamien kiinteistöjen lämmönkulutus
#### 10 Kaupungin omistamien kiinteistöjen lämmityksen khk-päästöt
# Juhalla tästä historiallinen kuva
#### 31 Kaukolämmöntuotannon kasvihuonekaasupäästöt
tmp <- oapply(emissions[
#  emissions$Fuel=="Fuel oil" &
emissions$Time!=2065 &
emissions$Pollutant=="CO2eq",] * BAU, c("Fuel","Time"),sum)@output
x = ~Time, y = ~Result, color = ~Fuel,
title="Energiantuotannon kasvihuonekaasupäästöt polttoaineittain",
yaxis=list(title="CO2eq-päästö (ton/a)")
#### 25 Lämmöntuotannon kasvihuonekaasupäästöt
# Tästä on Jounin historiallinen HSY-kuva mutta ei kuvausta eikä tietokidettä
#### 30 Sähköntuotannon kasvihuonekaasupäästöt
# Tästä on Jounin historiallinen kuva mutta ei kuvausta eikä tietokidettä
#### 8 Helsingin kaupungin ilmansaastepäästöt
tmp <- oapply(emissions[!grepl("CO2", emissions$Pollutant),] * BAU, c("Pollutant","Time"),sum)@output
x = ~Time, y = ~Result, color = ~Pollutant,
type = 'scatter', mode='lines') %>%
title="Helsingin kaupungin ilmansaastepäästöt (PM2.5)",
yaxis=list(title="Päästö (ton/a)")
#### 73 Altistuminen ilmansaasteille
tmp <- oapply(exposure[!grepl("CO2", exposure$Pollutant),] * BAU, c("Exposure_agent","Fuel","Time"),sum)@output
barmode = 'stack',
#### 74 Ympäristöterveyden tautitaakka
tmp <- oapply(DALY * BAU, c("Response","Pollutant","Time"),sum)@output
title="Ympäristöterveyden tautitaakka",
yaxis=list(title="Haittapainotetut elinvuodet (DALY/a)")
cat(translate("NOTE! In all graphs and tables, the Total energy saving policy is assumed unless otherwise noted\n"))
cat(translate("Total DALYs/a by different combinations of policy options.\n"))
temp <- DALYs[as.character(DALYs$Time) %in% c("2015", "2035") & DALYs$Response == "Total mortality" , ]
oprint(
translate(oapply(temp, INDEX = c("Time", "EnergySavingPolicy", "PlantPolicy"), FUN = sum)),
caption = translate("Table 1: Total DALYs/a by different combinations of policy options."),
caption.placement = "top",
include.rownames = FALSE
bui <- oapply(buildings * 1E-6, cols = c("City_area", "buildingsSource"), FUN = sum)
bui <- truncateIndex(bui, cols = "Heating", bins = 4)
oggplot(bui[bui$EnergySavingPolicy == "BAU" , ], x = "Time", fill = "Heating", binwidth = 5) +
title = translate("Building stock in Helsinki by heating"),
y = translate("Floor area (M m2)")
savefig("Rakennuskannan koko Helsingissä")
oggplot(bui, x = "Time", fill = "Efficiency", binwidth = 5) +
{if(fi) facet_wrap(~ Energiansäästöpolitiikka) else facet_wrap(~ EnergySavingPolicy)} +
title = translate("Building stock in Helsinki by efficiency policy"),
oggplot(bui, x = "Time", fill = "Renovation", binwidth = 5) +
title = translate("Building stock in Helsinki by renovation policy"),
oggplot(bui[bui$EnergySavingPolicy == "BAU" , ], x = "Time", fill = "Building", binwidth = 5) +
title = translate("Building stock in Helsinki"),
oggplot(buildings, x = "Time", fill = "Efficiency", binwidth = 5)+
{if(fi) facet_grid(Energiansäästöpolitiikka ~ Korjaukset) else facet_grid(EnergySavingPolicy ~ Renovation)} +
title = translate("Renovation of buildings by policy and efficiency"),
# Contains also other buildings than district heating and other energy than heating
hea <- EnergyConsumerDemandTotal * temperdays * 24 * 1E-3 # MW -> GWh
hea$Time <- as.numeric(as.character(hea$Time))
temp <- hea[hea$EnergySavingPolicy == "Energy saving total" & !hea$Consumable %in% c("District cooling", "Electric cooling") , ]
oggplot(truncateIndex(temp, cols = "Temperature", bins = 7), x = "Time", fill = "Temperature", binwidth = 5) +
{if(fi) facet_wrap(~ Hyödyke) else facet_wrap(~ Consumable)} +
title = translate("Energy consumption in all buildings"),
y = translate("Total energy (GWh /a)")
temp <- hea[!hea$Consumable %in% c("District cooling", "Electric cooling") , ]
oggplot(temp, x = "Time", fill = "Consumable", binwidth = 5) +
savefig("Helsingin vuotuinen energiantarve")
oggplot(hea, x = "Time", fill = "Consumable", binwidth = 5) +
hea2 <- EnergyNetworkDemand * temperdays * 24 / 1000 # MW -> GWh
hea2$Time <- as.numeric(as.character(hea2$Time))
oggplot(hea2, x = "Time", fill = "Fuel", binwidth = 5) +
title = translate("Energy demand in the network"),
fill = translate("Consumable"),
savefig("Energiankulutus verkossa Helsingissä")
eb <-EnergyNetworkOptim[EnergyNetworkOptim$Process_variable_type == "Activity",]
eb <- eb[eb$EnergySavingPolicy == "Energy saving total" , ]
colnames(eb@output)[colnames(eb@output) == "Process_variable_name"] <- "Plant"
eb$Process_variable_type <- NULL
ebtemp <- eb[eb$Time %in% c("2035") & eb$PlantPolicy == "BAU" & eb$Temperature != "(-18,-15]" , ]
ebtemp <- truncateIndex(ebtemp, cols = "Plant", bins = 7)
oggplot(ebtemp, x = "Temperature", fill = "Plant", turnx = TRUE) +
title = translate("Power plant activity by temperature daily optim \nPlant policy = BAU, Year = 2035"),
x = translate("Temperature of the day"),
y = translate("Average daily activity (MW)")
ebtemp <- eb[eb$Time %in% c("2035") & eb$Temperature != "(-18,-15]" , ]
ebtemp <- truncateIndex(ebtemp, cols = "Plant", bins = 10)
{if(fi) facet_wrap(~ Voimalapolitiikka) else facet_wrap(~ PlantPolicy)} +
title = translate("Power plant activity by temperature daily optim in 2035"),
savefig("Helsingin päivittäinen kaukolämpötase")
ebtemp <- eb[eb$Time %in% c("2005") & eb$PlantPolicy == "BAU" & eb$Temperature == "(0,3]" , ]
oggplot(ebtemp, x = "Plant", fill = "Plant", turnx = TRUE) +
{if(fi) facet_wrap(~ Lämpötila) else facet_wrap( ~ Temperature)} +
theme(axis.text.x = element_blank()) + # Turn text and adjust to right
title = translate("Power plant activity by temperature daily optim \nPlant policy = BAU, Year = 2005"),
fu <- fuelUse / 3.6E+6 # From MJ/a -> GWh/a
fu <- fu[fu$EnergySavingPolicy == "Energy saving total" , ]
fu$Burner <- NULL
fu$Time <- as.numeric(as.character(fu$Time))
futemp <- fu[fu$Time %in% c("2015", "2035", "2065") & fu$PlantPolicy == "BAU" , ]
futemp <- truncateIndex(futemp, cols = "Plant", bins = 7) * -1
oggplot(futemp, x = "Fuel", fill = "Plant", turnx = TRUE) +
{if(fi) facet_grid(Aika ~ Energiansäästöpolitiikka) else facet_grid(Time ~ EnergySavingPolicy)} +
title = translate("Energy commodity flows \n Plant policy = BAU"),
y = translate("Total annual energy (GWh/a)")
futemp <- fu[fu$Time %in% c("2005") & fu$PlantPolicy == "BAU" , ]
title = translate("Energy commodity flows in 2005 \n Plant policy = BAU"),
futemp <- fu[fu$Fuel %in% c("Heat") , ]
futemp <- truncateIndex(futemp, cols = "Plant", bins = 10) * -1
oggplot(futemp,
x = "Time", fill = "Plant", binwidth = 5) +
title = translate("District heat flow"),
savefig("Helsingin vuotuinen kaukolämpötase")
futemp <- fu[fu$Fuel %in% c("Electricity") & fu$Plant != "Kymijoki River's plants", ]
# Does not contain plants outside Helsinki: Kymijoki River's plants, a share of Olkiluoto nuclear plant.
oggplot(futemp, x = "Time", fill = "Plant", binwidth = 5) +
title = translate("Electricity flow"),
savefig("Helsingin vuotuinen sähkötase")
emis <- truncateIndex(emissions, cols = "Emission_site", bins = 5)
emis <- emis[emis$EnergySavingPolicy == "Energy saving total" & emis$Fuel != "Electricity" , ]
levels(emis$Fuel)[levels(emis$Fuel) == "Electricity_taxed"] <- "Electricity bought"
emis$Time <- as.numeric(as.character(emis$Time))
oggplot(emis, x = "Time", fill = "Fuel", binwidth = 5) +
{if(fi) facet_grid(Saaste ~ Voimalapolitiikka, scale = "free_y") else facet_grid(Pollutant ~ PlantPolicy, scale = "free_y")} +
title = translate("Emissions from heating in Helsinki"),
y = translate("Emissions (ton /a)")
scale_x_continuous(breaks = c(2000, 2050))
savefig("Helsingin energiantuotannon päästöt")
da <- DALYs[DALYs$EnergySavingPolicy == "Energy saving total" & DALYs$Fuel != "Electricity" , ]
levels(da$Fuel)[levels(da$Fuel) == "Electricity_taxed"] <- "Electricity bought"
da$Time <- as.numeric(as.character(da$Time))
oggplot(da, x = "Time", fill = "Fuel", binwidth = 5) +
title = translate("Health effects of PM2.5 from heating in Helsinki"),
y = translate("Health effects (DALY /a)")
savefig("Helsingin energiantuotannon terveysvaikutukset")
fp <- fuelPrice[fuelPrice$Fuel %in% c(
"Natural gas",
) , ]
fp$Time <- as.numeric(as.character(fp$Time))
levels(fp$Fuel)[levels(fp$Fuel) == "Electricity_taxed"] <- "Electricity"
ggplot(translate(fp@output), if(fi) {
aes(x = Aika, y = fuelPriceResult, colour = Polttoaine, group = Polttoaine)
aes(x = Time, y = fuelPriceResult, colour = Fuel, group = Fuel)
geom_line(size = 2)+theme_gray(base_size = BS) +
title = translate("Fuel prices (with tax)"),
y = translate("Price (Eur/MWh)")
savefig("Polttoaineiden verolliset hinnat")
tc <- truncateIndex(totalCost, cols = "Plant", bins = 11) / 10 * -1 # Yearly benefits (costs are negative)
tc <- tc[tc$EnergySavingPolicy == "Energy saving total" , ]
oggplot(tc, x = "Time", fill = "Cost", binwidth = 10) +
{if(fi) facet_wrap(~ Voimalapolitiikka) else facet_wrap( ~ PlantPolicy)} +
y = translate("Yearly cash flow (Meur)"),
title = translate("Total benefits and costs of energy production")
scale_x_continuous(breaks = c(2000, 2020, 2040, 2060))
savefig("Energiantuotannon kokonaiskustannus Helsingissä kustannuksittain")
oggplot(tc, x = "Time", fill = "Plant", binwidth = 10) +
savefig("Energiantuotannon kokonaiskustannus Helsingissä voimaloittain")
eac <- EAC[EAC$EnergySavingPolicy == "Energy saving total" , ] * -1
BS <- BSbase * 0.7 # Plot the next two graphs with smaller font because they are busy graphs.
eac2 <- eac[!eac$Plant %in% c(
oggplot(eac2, x = "PlantPolicy", fill = "Cost", turnx = TRUE) +
{if(fi) facet_wrap(~ Voimala, scale = "free_y") else facet_wrap(~ Plant, scale = "free_y")} +
title = translate("Incomes and costs by plant"),
y = translate("Effective annual cash flow (Meur/a)")
savefig("Helsingin voimalaitosten kustannustehokkuus")
oggplot(eac2, x = "PlantPolicy", fill = "Cost", turnx = TRUE)+
{if(fi) facet_wrap(~ Voimala) else facet_wrap(~ Plant)} +
savefig("Helsingin voimalaitosten kustannustehokkuus yhtenäisasteikolla")
eac <- truncateIndex(eac, cols = "Plant", bins = 11)
oggplot(eac, x = "PlantPolicy", fill = "Plant", turnx = TRUE)+
title = translate("Incomes and costs by plant policy"),
oggplot(eac, x = "PlantPolicy", fill = "Cost", turnx = TRUE)+
savefig("Teholliset tulot ja menot energiantuotannosta Helsingissä kustannuksittain")
temp <- truncateIndex(plantParameters[plantParameters$Parameter == "Max" , ], cols = "Plant", bins = 11)
temp <- temp[temp$Time >= 2000 & temp$Time <=2070 , ]
oggplot(temp, x = "Time", fill = "Plant", binwidth = 1) +
title = translate("Energy production capacity by plant policy"),
y = translate("Maximum capacity (MW)")
savefig("Energiantuotantokapasiteetin kehitys Helsingissä")
# odag() #Plots a directed acyclic graph of ovariables used in the model.
# This causes an internal error, so it must be the last row of the model.
Posterikuva Climate-KIC
Posteria varten tehty Gantt chart Climate-KIC-kokoukseen 31.1.2018. Kuvaa ei käytetty lopullisessa posterissa. Lisätietoja Google Drivessa: Climate-KIC-posteri ja idean hakemus.
Phase = rep(c(
"Ideation Day",
"Planning",
"Drafting",
"Finalising",
"Decision",
),each=2),
Task = c(
NA,"Launch project",NA,
"Stakeholder interviews and meetings",NA,
"Concept writing and feedback",NA,
"Embedding the concept to the CNH 2035 plan",NA,
"Council decision on CNH 2035 plan",
"Implementation of the plan",NA
Time = as.Date(c(
rep("2018-01-31",2),
"2018-02-01", "2018-03-31",
"2018-04-01", "2018-05-31",
"2018-06-01", "2018-06-30",
"2018-08-01", "2018-08-15",
"2018-09-01", "2018-12-31"
Taskno = rep(6:1, each=2)
#Sys.setlocale(locale="uk")
#png("climatekichki.png", width=1500, height=380)
ggplot(d, aes(x=Time, y=Taskno, group=Phase, label=Task))+
geom_line(size=15, colour="lightblue")+
geom_point(size=18, colour="lightblue")+
theme_gray(base_size = 30)+
geom_text(size=10)+
coord_cartesian(xlim=as.Date(c("2018-01-01","2018-12-31")), ylim=c(0.7,6.3))+
theme(axis.text.y = element_blank())+labs(x="",y="")
#Sys.setlocale(locale="")
Hiilineutraali Helsinki 2035 -toimenpideohjelmaan liittyviä sivuja
Seurantatyökalu
seurantatyökalun demo · keskustelutyökalujen demoja: kerrokantasi hel kerrokantasi testi, Decidim omastadi testi, Discourse demo, Kialo, Opasnet, argumentit näkemysverkkona · Helsingin digisuunnittelun periaatteet · syksyn 2018 aineistoa · admin-demo (vaatii salasanan) · REST-rajapinta seurantatyökalulle Kerrokantasi-palvelulle · seurantatyökalun tietomallin yleiskuva · ensimmäinen blogi työkalusta Storybook · Skenaariotyökalu · Plotly
Toimepiteitä
Energiarenessanssi ·
Tietokiteitä (englanniksi)
Air pollution emissions in Helsinki · Building model · Building stock in Helsinki · Economic impacts · Emission factors for burning processes · Emission factors for road transport · Energy balance · Energy balance in Helsinki · Energy use of buildings · ERFs of environmental pollutants · External cost · Health impact assessment · Helsinki energy consumption · Helsinki energy production · Intake fractions of PM · Population of Helsinki metropolitan area · Prices of fuels in heat production · Road traffic in Helsinki ·
Aiheeseen liittyviä arviointeja
HSY:n päästölaskenta ja menetelmät · Helsingin energiapäätös 2015 · Climate change policies in Helsinki · Climate change policies and health in Kuopio · Climate change policies in Basel
Toimenpideohjelma Stadinilmasto-sivuilla · juokseva muistio työn etenemisestä · Sitoumus2050 · Helsingin energiapäätökseen liittyviä arvoja · Helsingin hallintokuntien energiatehokkuus- ja ilmastotoimenpiteet ja -tavoitteet · Helsingin ilmastonmuutos -tiekartta · Helsingin kaupungin talous · Helsingin ohjelmalliset energiatehokkuus- ja ilmastotoimenpiteet ja -tavoitteet · Helsingin strategiset energiatehokkuus- ja ilmastotavoitteet · Ilmastonmuutokseen sopeutuminen: seuranta ja arviointi · Ilmastopolitiikkojen vaikutusten luokittelu · Rakennuskantamalli
Ilmasto ja maankäyttö
Luke: IPCCn mukaan maankäytöllä suuri merkitys [18] [19]
IPCC:n maankäyttöraportti [20]
Helsingin kaupungin ilmastojulkaisuja:
Ilmastoryhmä. (2017) Helsingin ilmastonmuutokseen sopeutumisen linjaukset. [21]
Tiia Yrjölä, Jari Viinanen. (2012) Keinoja ilmastonmuutokseen sopeutumiseksi Helsingin kaupungissa. Helsingin ympäristökeskuksen julkaisuja 2/2012. [22]
Petteri Huuska, Johannes Lounasheimo, Mira Jarkko, Jari Viinanen ja Sonja-Maria Ignatius. (2017) Selvitys Helsingin uusista ilmastotavoitteista. Hiilineutraalisuustavoitteen päivitys sekä vuoden 2030 päästötavoite ja toimenpiteet. Helsingin kaupungin ympäristökeskuksen julkaisuja 4/2017 [23]
Erkka Ryynänen, Laura Oja ja Iivo Vehviläinen (Gaia Consulting Oy); Olli-Pekka Pietiläinen, Riina Antikainen ja Pasi Tainio (Suomen ympäristökeskus). (2014) Helsingin 30 % päästövähennysselvitys. Kasvihuonekaasupäästöjen kehitys ja vähentämisen kustannustehokkaat toimenpiteet. Helsingin kaupungin ympäristökeskuksen julkaisuja 7/2014 [24]
Summary Report of the EAT-Lancet Commission. (2019) Food Planet Health. Health diets from sustainable food systems. [25]
Liikennejärjestelmä. (2019) Liikenteen kasvihuonekaavupäästöt [26]
Ympäristöhyvinvointi
Hiilineutraali Helsinki 2035 -toimenpideohjelma ja julkaisu
Energiarenessanssi rakennusten energiatehokkuuden parantamiseen (toimenpiteet 66-69 toimenpideohjelmassa)
Ohjelman toimenpiteet ja tarkemmat tiedot
suunnitelma toimenpideohjelman verkkosivuston rakenteesta ja esitys suunnitelluista toiminnallisuuksista
Toimenpiteiden seurantatyökalu (luonnos)
Google-dokumentteja: Palikoiden suhteet · Juokseva muistio arvoprofiili · Ilmasto-ohjelman seuranta ja arviointi · Tietokiteet ja näkemysverkot ilmasto-ohjelman seurannassa · Vaikutusarviointityökalu-hakemisto
Mai Kivelä: Helsingin ilmasto-ohjelma ei riitä
Stadinilmasto-verkkosivu ilmastotyön seurantaan
Decidim-kokeilualusta
Keskustele-kokeilualusta
Inforglobe-alusta päätösten joukkoistamiseen
Merihaan kansalaistilaisuus 6.11.2016 [27]
Mielikuvakartta Hiilineutraali Helsinki -ohjelman työkaluista
Tieteen termipankki: ilmastonmuutos
Tapio: Ilmastonmuutos haltuun
HNH2035 päästövähennyspotentiaaleja ja kustannustehokkuutta [28]
Helsingin energiapäätös 2015 -arviointi koskien voimalaitosratkaisuja
Osallisuustyökaluja: Helsingin osallistuva budjetointi · Decidim · Helsingin Decidim-kokeilu · Kerrokantasi
Ympäristöterveysindikaattori
Hiilineutraali Helsinki 2035 -ohjelman työstämisen aikaisia sivuja
Hiilineutraali Helsinki 2035 -toimenpideohjelma
Climate-KIC-päivä 31.1.2018
Ohjeita pitchauspäivään
Arvoprofiili-pitchin videoharjoitus
Committed to CO2-omitted-hakemus
Ensimmäinen posteriversio
Arvoprofiilin jatkuva muistio
Fiverr: miten luot näyttävät nettisivut
projektikansio Google Drivessä
tiedostojen tietorakenne
Reading data from google sheets into R
toimenpiteiden taulukko Google sheetissä
MySmartLife-hanke (EU-rahoitteinen, Helsinki majakkakaupunkina)
Yhtäköyttä-hankkeen loppuraportti
op_en:Structure of shared understanding
Google-hakemisto hiilineutraalin Helsingin tiedostoille]
↑ Hiilineutraali Helsinki 2035 -toimenpideohjelma. Helsinki, 2018. [1]
Voit kommentoida sisältöä myös kirjautumatta Opasnettiin yksinkertaisesti kirjoittamalla kommenttisi alla olevaan kenttään. Sivun moderaattori siirtää kommenttisi asiasisällön osaksi sivun tekstiä ja siirtää kommentin sitten arkistoon: Näytä tulokset . Etsi lisätietoja tehdyistä muutoksista keskustelusivulta.
Kommenttisi tämän sivun sisältöön tai keskusteluun:
Mihin sivun kohtaan kommenttisi liittyy?:
Tämänhetkiset kommentit, joita ei ole vielä sisällytetty sivulle tai keskustelusivulle.
Poistettavat kommentit (varsinaiseen tekstiin siirretyt)
Poistettavan kommentin ID:
- Valitse syy - Kommentti on sisällytetty keskusteluun tai sivulle Kommmentti ei liity sivun aiheeseen Kommentti on häiriköintiä (käytä säästellen)
Noudettu kohteesta http://fi.opasnet.org/fi-opwiki/index.php?title=Hiilineutraali_Helsinki_2035&oldid=35891
Sisältää kommentointityökalun
Sivua on viimeksi muutettu 12. elokuuta 2019 kello 05.33.