knitr::opts_chunk$set(echo = TRUE, message = FALSE) library(robonomistClient) library(pttrobo) library(tidyverse) library(lubridate) library(pttdatahaku) library(statfitools) # devtools::load_all(path = '../pttrobo/') devtools::load_all() read_ennuste_data <- function(ennuste_data_file) { readxl::read_excel(ennuste_data_file) } # ennuste_data <- # read_ennuste_data("/Documents and Settings/PekkaKinnunen/OneDrive - Pellervon Taloustutkimus PTT ry/ME/Taulut ME/Ennuste kokoomataulukko_kevät_2022.xlsx") ennuste_data <- read_ennuste_data("~/../Pellervon Taloustutkimus PTT ry/Ennuste - Taulut Metsä/ptt_ennusteet_MA_2022_1.xlsx")|> separate(col = sarja_nmi, sep = "_", into = c("sarja_nmi", "luokka")) # colnames(ennuste_data) start_time <- "2014-01-01" data_kv_hinta <- purrr::map(purrr::set_names(c("kuusitukki", "mäntykuitu", "kuusikuitu", "mäntytukki")), ~readxl::read_xlsx( "~/../Pellervon Taloustutkimus PTT ry/Ennuste - Taulut Metsä/kv_puunhinta.xlsx", sheet = .x, skip = 1)|> mutate(time = lubridate::ym(time)) |> gather(geo, value, -time)|> mutate(geo = as_factor(geo)) |> group_by(geo) |> mutate(value = rebase(value, time, 2020)) |> ungroup())
ptt_data_robo( "tulli/uljas_sitc", dl_filter = list( "Tavaraluokitus SITC2" = c("25", "63", "64"), "Maa" = c("AA", "RU"), "Suunta" = c("Vienti määrämaittain"), "Indikaattorit" = "Tilastoarvo (euro)" ) ) |> filter(time >= start_time) |> filter_recode( suunta = c("Vieni" = "Vienti määrämaittain"), tavaraluokitus_sitc2 = c( "Massa" = "25 (2002--.) Paperimassa", "Puutuotteet" = "63 (2002--.) Puu- ja korkkituotteet", "Paperi, kartonki ja tuotteet" = "64 (2002--.) Paperi ja pahvi sekä tuotteet niistä" ) ) |> mutate(maa = statfitools::extract_code(maa)) |> spread(maa, value) |> mutate(value = 100 * RU / AA) |> ptt_plot( grouping = tavaraluokitus_sitc2, title = "Venäjän osuus viennistä", subtitle = "%", caption = "Lähde: Tulli, PTT") |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Arvo, milj. e", nimike = c( "Massa" = "....Massa", "Paperi" = "....Paperi", "Kartonki" = "....Kartonki", "Puutuotteet" = "...PUUTUOTETEOLLISUUS" ) )|> group_by(across(!c(time, value))) |> mutate(value = 12 * trend_series(value, time, x11="") / 1000) |> ungroup() |> ptt_plot( grouping = nimike, title = "Metsäteollisuuden viennin arvo", subtitle = "Mrd. euroa, trendi vuositasolle korottettuna", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = T, hovertext = list(rounding = 1, unit = "mrd €", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientiarvo")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Yksikköarvo, e/yksikkö", nimike = c( "Massa" = "....Massa", "Paperi" = "....Paperi", "Kartonki" = "....Kartonki" ) )|> group_by(across(!c(time, value))) |> # mutate(value = 12 * trend_series(value, time, x11="") / 1000) |> ungroup() |> ptt_plot( grouping = nimike, title = "Kemiallisen metsäteollisuuden vientihinnat", subtitle = "euroa / tonni", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "€/t", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientihinta")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Yksikköarvo, e/yksikkö", nimike = c( "Kartonki" = "....Kartonki" ) )|> group_by(across(!c(time, value))) |> # mutate(value = 12 * trend_series(value, time, x11="") / 1000) |> ungroup() |> ptt_plot( grouping = nimike, title = "Kartongin vientihinta", subtitle = "euroa / tonni", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "€/t", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientihinta")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Yksikköarvo, e/yksikkö", nimike = c( "Massa" = "....Massa" ) )|> group_by(across(!c(time, value))) |> # mutate(value = 12 * trend_series(value, time, x11="") / 1000) |> ungroup() |> ptt_plot( grouping = nimike, title = "Massan vientihinta", subtitle = "euroa / tonni", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "€/t", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientihinta")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Määrä, yksikköä", nimike = c( "Massa" = "....Massa", "Paperi" = "....Paperi", "Kartonki" = "....Kartonki" ) )|> group_by(across(!c(time, value))) |> mutate(value = 12 * trend_series(value, time, x11="") ) |> ungroup() |> ptt_plot( grouping = nimike, title = "Kemiallisen metsäteollisuuden vientimäärä", subtitle = "1000 tonni", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientimaara")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Määrä, yksikköä", nimike = c( "Paperi" = "....Paperi" ) )|> group_by(across(!c(time, value))) |> mutate(value = 12 * trend_series(value, time, x11="") ) |> ungroup() |> ptt_plot( grouping = nimike, title = "Paperin vientimäärä", subtitle = "1000 tonni", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientimaara")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Määrä, yksikköä", nimike = c( "Sahatavara" = "....Sahatavara", "Mäntysahatavara" = ".....Mäntysahatavara", "Kuusisahatavara" = ".....Kuusisahatavara" ) )|> group_by(across(!c(time, value))) |> mutate(value = 12 * trend_series(value, time, x11="") ) |> ungroup() |> ptt_plot( grouping = nimike, title = "Sahatavaran vientimäärä", subtitle = "1000 tonni, trendi vuositasolle korotettuna", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientimaara")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Yksikköarvo, e/yksikkö", nimike = c( "Mäntysahatavara" = ".....Mäntysahatavara", "Kuusisahatavara" = ".....Kuusisahatavara" ) )|> group_by(across(!c(time, value))) |> ungroup() |> ptt_plot( grouping = nimike, title = "Sahatavaran vientihinta", subtitle = "€/m3", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientihinta")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/06_Metsateollisuuden_ulkomaankauppa/02_Tuonti_ja_vienti_kuukausittain.px") |> filter(time >= start_time) |> filter_recode( kauppasuunta = "Vienti", muuttuja = "Yksikköarvo, e/yksikkö", nimike = c( "Havuvaneri" = ".....Havuvaneri", "Lehtivaneri" = ".....Lehtivaneri" ) )|> group_by(across(!c(time, value))) |> ungroup() |> ptt_plot( grouping = nimike, title = "Vanerin vientihinnat", subtitle = "€/m3", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "vientihinta")) |> ptt_plot_create_widget()
ptt_data_robo_l("luke/04_Metsa/04_Talous/08_Metsateollisuuden_puunkaytto/04_metsateol_puunk_tavaralajeittain_1860.px") |> filter(time >= start_time) |> filter_recode( alkupera = c("Kotimainen" = "Kotimainen puu", "Ulkomainen" = "Tuontipuu"), puutavaralaji = c("Raakapuu yhteensä") ) |> ptt_plot( grouping = alkupera, title = "Metsäteollisuuden puunkäyttö", subtitle = "Milj. m3, vuosi 2021 arvio", caption = "Lähde: Luke ja PTT", rangeslider = F, hovertext = list(dateformat="Annual", rounding = 2, unit = "milj. m3", extra = ""), plot_type = c("bar"), plot_mode = "stack" ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "puunkaytto"), n_obs = 3) |> ptt_plot_create_widget()
data("luke/04_Metsa/02_Rakenne_ja_tuotanto/06_Puun_markkinahakkuut/04_Vuositilastot/01a_Teollisuuspuun_hakkuut_maak_v.px") |> mutate(time = as.Date(paste0(str_extract(Vuosi, "[0-9]*"), "-01-01"))) |> statfitools::clean_names() |> filter(time >= start_time) |> filter_recode( maakunta = c("KOKO MAA"), omistajaryhma = c( "Yhtiöt ja valtio" = ".Metsäteollisuus ja valtio", "Yksityiset" = ".Yksityismetsät, yhteensä" ), puutavaralaji = c("KAIKKI PUUTAVARALAJIT YHTEENSÄ") ) |> mutate(value = value / 1000) |> ptt_plot( grouping = omistajaryhma, title = "Markkinahakkuut", subtitle = "Milj. m3", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = T, hovertext = list(rounding = 1, unit = "", extra = ""), plot_type = c("bar"), plot_mode = "stack" ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "hakkuut")) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/02_Rakenne_ja_tuotanto/06_Puun_markkinahakkuut/02_Kuukausitilastot/01_Teollisuuspuun_hakkuut_kk.px") |> filter(time >= start_time) |> filter_recode( omistajaryhma = c( "Yhteensä" = "Kaikki yhteensä", "Yksityiset" = ".Yksityismetsät, yhteensä", "Metsäteollisuus" = ".Metsäteollisuus" ), puutavaralaji = c("Kaikki puutavaralajit yhteensä") ) |> group_by(across(!c(time, value))) |> mutate(value = 12 * trend_series(value, time, x11="") /1000 ) |> ungroup() |> ptt_plot( grouping = omistajaryhma, title = "Markkinahakkuut kuukausittain", subtitle = "Milj. m3, valtion hakkuut puuttuvat", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = T, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_create_widget()
ptt_data_robo( "luke/04_Metsa/04_Talous/02_Teollisuuspuun_kauppa/02_Kuukausitilastot/01a_Kantohinnat_kk.px" ) |> filter(time >= start_time) |> filter_recode( hinta_alue = c("KOKO MAA"), hakkuutapa = c("Pystyhakkuut yhteensä"), puutavaralaji = c( "Mäntytukki", "Kuusitukki", "Koivutukki" ) ) |> ptt_plot( grouping = puutavaralaji, title = "Tukkipuun kantohinnat", subtitle = "euroa / m3", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = T, # axis_limits = list(y = c(30, 70)), hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "kantohinta")) |> ptt_plot_create_widget()
ptt_data_robo( "luke/04_Metsa/04_Talous/02_Teollisuuspuun_kauppa/02_Kuukausitilastot/01a_Kantohinnat_kk.px" ) |> filter(time >= start_time) |> filter_recode( hinta_alue = c("KOKO MAA"), hakkuutapa = c("Pystyhakkuut yhteensä"), puutavaralaji = c( "Mäntykuitu" = "Mäntykuitupuu", "Kuusikuitu" = "Kuusikuitupuu", "Koivukuitu" = "Koivukuitupuu" ) ) |> ptt_plot( grouping = puutavaralaji, title = "Kuitupuun kantohinnat", subtitle = "euroa / m3", caption = "Lähde: Luke ja PTT", rangeslider = FALSE, zeroline = T, # axis_limits = list(y = c(10, 24)), hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "kantohinta")) |> ptt_plot_create_widget()
ptt_data_robo_l("luke/04_Metsa/04_Talous/16_Kantorahatulot/01_Bruttokantorahat_v_omistajaryhma.px") |> filter_recode( omistajaryhma = c(".Yksityismetsät, yhteensä"), puutavaralaji = c("Bruttokantorahatulot" = "Kaikkiaan"), metsakeskusalue = c("KOKO MAA") ) |> mutate(value = value / 1000) |> filter(time >= start_time) |> ptt_plot( grouping = puutavaralaji, title = "Yksityismetsien bruttokantorahatulot", subtitle = "miljoonaa euroa, nimellinen", caption = "Lähde: Luke ja PTT", rangeslider = F, hovertext = list(dateformat="Annual", rounding = 2, unit = "Milj. €", extra = ""), plot_type = c("bar"), plot_mode = "stack" ) |> ptt_plot_add_prediction(filter(ennuste_data)) |> ptt_plot_create_widget()
data_kv_hinta[["kuusitukki"]] |> ptt_plot( grouping = geo, title = "Kuusitukin hinnat kansainvälisesti", subtitle = "Indeksi, 2020 = 100", caption = "Lähde: Luke, Skogsstyrelsen, RMK, ČSÚ, Statistik Austria, Destatis ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_create_widget()
data_kv_hinta[["mäntytukki"]] |> ptt_plot( grouping = geo, title = "Mäntytukin hinnat kansainvälisesti", subtitle = "Indeksi, 2020 = 100", caption = "Lähde: Luke, Skogsstyrelsen, RMK, ČSÚ, Statistik Austria, Destatis ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_create_widget()
data_kv_hinta[["kuusikuitu"]] |> ptt_plot( grouping = geo, title = "Kuusikuitupuun hinnat kansainvälisesti", subtitle = "Indeksi, 2020 = 100", caption = "Lähde: Luke, Skogsstyrelsen, RMK, ČSÚ, Statistik Austria, Destatis ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_create_widget()
data_kv_hinta[["mäntykuitu"]] |> ptt_plot( grouping = geo, title = "Mäntykuitupuun hinnat kansainvälisesti", subtitle = "Indeksi, 2020 = 100", caption = "Lähde: Luke, Skogsstyrelsen, RMK, ČSÚ, Statistik Austria, Destatis ja PTT", rangeslider = FALSE, zeroline = F, hovertext = list(rounding = 1, unit = "", extra = "") ) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/10_Puun_energiakaytto/22_tuontihake_arvio.px") |> filter_recode( tuontihake = c("Tuontihake" = ".tuontihakkeen osuus metsähakkeen käytöstä lämpö- ja voimalaitoksissa, %") ) |> filter(time >= start_time) |> ptt_plot( grouping = tuontihake, title = "Tuontihakkeen käyttö lämpö- ja voimalaitoksissa", subtitle = "%, osuus", caption = "Lähde: Luke ja PTT", rangeslider = F, hovertext = list(dateformat="Annual", rounding = 2, unit = "Milj. €", extra = ""), plot_type = c("bar"), plot_mode = "stack" ) |> # ptt_plot_add_prediction(ennuste_data) |> ptt_plot_create_widget()
ptt_data_robo("luke/04_Metsa/04_Talous/10_Puun_energiakaytto/01b_metsahakkeen_kokkaytto_maak.px") |> filter_recode( maakunta = c("KOKO MAA"), metsahake = c( "Lämpö- ja voimalaitokset" = ".Lämpö- ja voimalaitokset", "Pientalot" = ".Pientalot") ) |> filter(time >= start_time) |> ptt_plot( grouping = metsahake, title = "Metsähakkeen energiankäyttö", subtitle = "Milj. m3", caption = "Lähde: Luke ja PTT", rangeslider = F, hovertext = list(dateformat="Annual", rounding = 2, unit = "Milj. €", extra = ""), plot_type = c("bar"), plot_mode = "stack" ) |> ptt_plot_add_prediction(filter(ennuste_data, luokka == "metsähake")) |> ptt_plot_create_widget()
ptt_plot_upload_widgets()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.