From 85dd660a0971c8cbfc43297b218b0936e47d4da5 Mon Sep 17 00:00:00 2001
From: Ben Anderson <dataknut@icloud.com>
Date: Fri, 24 Apr 2020 15:32:01 +0100
Subject: [PATCH] moved to its own repo

---
 carbonator/app.R            | 298 ------------------------------------
 carbonator/data/2018.csv    |  19 ---
 carbonator/data/2018.xlsx   | Bin 5897 -> 0 bytes
 carbonator/data/2019.csv    |  19 ---
 carbonator/data/2019.xlsx   | Bin 10625 -> 0 bytes
 carbonator/data/~$2018.xlsx | Bin 165 -> 0 bytes
 carbonator/data/~$2019.xlsx | Bin 165 -> 0 bytes
 7 files changed, 336 deletions(-)
 delete mode 100644 carbonator/app.R
 delete mode 100644 carbonator/data/2018.csv
 delete mode 100644 carbonator/data/2018.xlsx
 delete mode 100644 carbonator/data/2019.csv
 delete mode 100644 carbonator/data/2019.xlsx
 delete mode 100644 carbonator/data/~$2018.xlsx
 delete mode 100644 carbonator/data/~$2019.xlsx

diff --git a/carbonator/app.R b/carbonator/app.R
deleted file mode 100644
index 6fe59ab..0000000
--- a/carbonator/app.R
+++ /dev/null
@@ -1,298 +0,0 @@
-#
-# This is a Shiny web application. You can run the application by clicking
-# the 'Run App' button above.
-#
-# Find out more about building applications with Shiny here:
-#
-#    http://shiny.rstudio.com/
-#
-
-dSource <- "https://lowcarbonbuildings.wordpress.com/2020/02/29/the-carbon-footprint-of-production-and-how-much-it-matters-part-1"
-beisSource <- "https://www.gov.uk/government/publications/greenhouse-gas-reporting-conversion-factors-2019"
-
-library(shiny)
-library(ggplot2)
-library(data.table)
-
-# load factors
-factor_dt <- data.table::fread("data/2019.csv")
-
-# Define UI for application that draws a histogram
-ui <- fluidPage(
-
-    # Application title
-    titlePanel("The Carbonator"),
-
-    # Sidebar with a slider input for number of bins 
-    sidebarLayout(position = "right",
-        sidebarPanel(
-            h3("Your carbon"),
-            # Output: Bar chart
-            plotOutput(outputId = "distPlot")
-        ),
-
-        # Show a plot of the generated distribution
-        mainPanel(
-            tabsetPanel(type = "tabs",
-                        tabPanel("Heat and hot water", 
-                                 fluidRow(
-                                     column(3,helpText("Electricity (", 
-                                                       factor_dt[Contributor == "Electricity", unit],")"
-                                     )
-                                     ),
-                                     column(2,numericInput("elec", 
-                                                           value = factor_dt[Contributor == "Electricity", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor == "Electricity", mFactor], " Kg CO2e/kWh (BEIS 2018)")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Gas (", factor_dt[Contributor == "Gas", unit],")"
-                                     )
-                                     ),
-                                     column(2,numericInput("gas", 
-                                                           value = factor_dt[Contributor == "Gas", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor == "Gas", mFactor], " Kg CO2e/kWh")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Oil (", factor_dt[Contributor == "Oil", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("oil", 
-                                                           value = factor_dt[Contributor == "Oil", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor == "Oil", mFactor], " Kg CO2e/l")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Coal (", factor_dt[Contributor == "Coal", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("coal", 
-                                                           value = factor_dt[Contributor == "Coal", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor == "Coal", mFactor], " Kg CO2e/t")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Wood (", factor_dt[Contributor == "Wood", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("wood", 
-                                                           value = factor_dt[Contributor == "Wood", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor == "Wood", mFactor], " Kg CO2e/t")
-                                     )
-                                 )
-                                 ),
-                        tabPanel("Car use",
-                                 fluidRow(
-                                     column(3,helpText("Car petrol < 1.4l (", factor_dt[Contributor %like% "< 1.4", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("car14l", 
-                                                           value = factor_dt[Contributor %like% "< 1.4", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "< 1.4", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car petrol > 1.4l (", factor_dt[Contributor %like% "> 1.4", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("car14m", 
-                                                           value = factor_dt[Contributor %like% "> 1.4", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "> 1.4", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car diesel < 1.7l (", factor_dt[Contributor %like% "< 1.7", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("diesel17l", 
-                                                           value = factor_dt[Contributor %like% "< 1.7", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "< 1.7", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car diesel > 1.7l (", factor_dt[Contributor %like% "> 1.7", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("diesel17m", 
-                                                           value = factor_dt[Contributor %like% "> 1.7", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "> 1.7", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car elec (small) (", factor_dt[Contributor %like% "small", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("elecSmall", 
-                                                           value = factor_dt[Contributor %like% "small", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "small", mFactor], " Kg CO2e/mile (BEIS 2018)")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car elec (medium) (", factor_dt[Contributor %like% "medium", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("elecMedium", 
-                                                           value = factor_dt[Contributor %like% "medium", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "medium", mFactor], " Kg CO2e/mile (BEIS 2018)")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Car elec (large) (", factor_dt[Contributor %like% "large", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("elecLarge", 
-                                                           value = factor_dt[Contributor %like% "large", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "large", mFactor], " Kg CO2e/mile (BEIS 2018)")
-                                     )
-                                 )
-                                 ),
-                        tabPanel("Public transport", 
-                                 fluidRow(
-                                     column(3,helpText("Bus (", factor_dt[Contributor %like% "Bus", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("bus", 
-                                                           value = factor_dt[Contributor %like% "Bus", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "Bus", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Train (", factor_dt[Contributor %like% "Train", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("train", 
-                                                           value = factor_dt[Contributor %like% "Train", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "Train", mFactor], " Kg CO2e/mile")
-                                     )
-                                 ),
-                                 fluidRow(
-                                     column(3,helpText("Air (", factor_dt[Contributor %like% "Air", unit], ")"
-                                     )
-                                     ),
-                                     column(2,numericInput("air", 
-                                                           value = factor_dt[Contributor %like% "Air", Usage],
-                                                           label = ""
-                                     )
-                                     ),
-                                     column(4,helpText(factor_dt[Contributor  %like% "Air", mFactor], " Kg CO2e/mile")
-                                     )
-                                 )
-                                 ),
-                        tabPanel("Diet", 
-                                 fluidRow(
-                                     column(4,helpText("Diet (choose)"
-                                     )
-                                     ),
-                                     column(3,selectInput("diet", label = "",
-                                                          choices = list("Standard " = 2200, 
-                                                                         "Vegan with minimal processed food & low waste " = 1100,
-                                                                         "Ignore my diet" = 0),
-                                                          selected = 2200)
-                                     ),
-                                     column(4,p("Standard: 2200 kg C02e"),
-                                            p("Vegan, low waste: 1100 Kg CO2e"),
-                                            p("Ignore diet: 0 Kg CO2e"),
-                                                p("If you want to investigate the carbon footprint of your food try the ",
-                                                a("BBC calculator", 
-                                                  href = "https://www.bbc.co.uk/news/science-environment-46459714")
-                                                ),
-                                     )
-                                 ))
-            ),
-            p("Enter your own yearly numbers above to get your annual CO2e carbon footprint (in kg)."),
-            p("Or just enter any old number to see what happens. For example you can compare trains & planes for the same journey distance."),
-            p("To reset the default values just reload the page."),
-            p(),
-            p("Data source: Judith Thornton's ",
-              a("carbon footprint calculator", 
-                href = dSource), " or"),
-            p("(BEIS 2018) ",
-              a("table", href = ""))
-        )
-    )
-)
-
-# Define server logic required to draw a histogram
-server <- function(input, output) {
-
-    output$distPlot <- renderPlot({
-        # generate input$xxxx from ui.R
-        dt <- data.table()
-        dt <- rbind(dt,
-                    # must be an easier way
-                      cbind("Energy: Electricity", input$elec * factor_dt[Contributor == "Electricity", mFactor]),
-                      cbind("Energy: Gas", input$gas * factor_dt[Contributor == "Gas", mFactor]),
-                    cbind("Energy: Oil", input$oil * factor_dt[Contributor == "Oil", mFactor]),
-                    cbind("Energy: Coal", input$coal * factor_dt[Contributor == "Coal", mFactor]),
-                    cbind("Energy: Wood", input$wood * factor_dt[Contributor == "Wood", mFactor]),
-                    cbind("Car petrol < 1.4l", input$car14l * factor_dt[Contributor %like% "< 1.4l", mFactor]),
-                    cbind("Car petrol > 1.4l", input$car14m * factor_dt[Contributor  %like% "> 1.4l", mFactor]),
-                    cbind("Car diesel < 1.7l", input$diesel17l * factor_dt[Contributor  %like% "< 1.7l", mFactor]),
-                    cbind("Car diesel > 1.7l", input$diesel17m * factor_dt[Contributor  %like% "> 1.7l", mFactor]),
-                    cbind("Car elec (small)", input$elecSmall * factor_dt[Contributor  %like% "small", mFactor]),
-                    cbind("Car elec (medium)", input$elecMedium * factor_dt[Contributor  %like% "medium", mFactor]),
-                    cbind("Car elec (lqrge)", input$elecLarge * factor_dt[Contributor  %like% "large", mFactor]),
-                    cbind("Transport: Train", input$train * factor_dt[Contributor  %like% "Train", mFactor]),
-                    cbind("Transport: Bus", input$bus * factor_dt[Contributor  %like% "Bus", mFactor]),
-                    cbind("Transport: Air", input$air * factor_dt[Contributor  %like% "Air", mFactor]),
-                    cbind("Diet", input$diet)
-                      )
-        # draw the bar chart
-        dt[, source := V1]
-        dt[, co2e := as.numeric(V2)]
-        ggplot2::ggplot(dt[co2e > 0], aes(x = source, y = co2e/1000, fill = V1)) +
-            geom_col() +
-            scale_fill_viridis_d(guide=FALSE) +
-            labs(y = "Tonnes CO2e",
-                 x = "Source") +
-            coord_flip()
-        #totalCarbon <- sum(dt$co2e)
-        #p("Total carbon footprint:" , totalCarbon)
-    })
-}
-
-# Run the application 
-shinyApp(ui = ui, server = server)
diff --git a/carbonator/data/2018.csv b/carbonator/data/2018.csv
deleted file mode 100644
index 8309eff..0000000
--- a/carbonator/data/2018.csv
+++ /dev/null
@@ -1,19 +0,0 @@
-Contributor,mFactor,unit,Usage,kg CO2 e,Source:,url
-Electricity,0.28307,kWh,12000,,BEIS 2018,https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/715425/Conversion_Factors_2018_-_Condensed_set__for_most_users__v01-01.xls
-Gas,0.185,kWh,10000,,,
-Wood,190,tonnes,,,,
-Oil,2.53,litres,,,,
-Coal,2881.65,tonnes,,,,
-"car, petrol < 1.4l",0.25,miles,10000,2500,,
-"car, petrol > 1.4l",0.457,miles,10000,4570,,
-"car, diesel < 1.7l",0.234,miles,10000,2340,,
-"car, diesel > 1.7l",0.346,miles,10000,3460,,
-elec (small),0.08,miles,10000,810,BEIS 2018,https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/715425/Conversion_Factors_2018_-_Condensed_set__for_most_users__v01-01.xls
-elec (medium),0.09,miles,10000,948,BEIS 2018,https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/715425/Conversion_Factors_2018_-_Condensed_set__for_most_users__v01-01.xls
-elec (large),0.12,miles,10000,1157,BEIS 2018,https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/715425/Conversion_Factors_2018_-_Condensed_set__for_most_users__v01-01.xls
-Bus,0.197,miles,10000,1970,,
-Train,0.075,miles,10000,750,,
-Air,0.255,miles,10000,2550,,
-standard diet,2200,,,2200,,
-"vegan, min processed, low waste",1100,,,,,
-,,,,23256,,
diff --git a/carbonator/data/2018.xlsx b/carbonator/data/2018.xlsx
deleted file mode 100644
index a00a4e796627826b863fefac3d767819a56176fe..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5897
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
Nu$L$-QdNJU|1U5AG0Fe{

diff --git a/carbonator/data/2019.csv b/carbonator/data/2019.csv
deleted file mode 100644
index 2e35128..0000000
--- a/carbonator/data/2019.csv
+++ /dev/null
@@ -1,19 +0,0 @@
-Contributor,mFactor,unit,Usage,kg CO2 e,Source:,url
-Electricity,0.26,kWh,12000,3067,BEIS 2019, https://www.gov.uk/government/publications/greenhouse-gas-reporting-conversion-factors-2019
-Gas,0.185,kWh,10000,1850,,
-Wood,190,tonnes,2,380,,
-Oil,2.53,litres,1000,2530,,
-Coal,2881.65,tonnes,1,2882,,
-"car, petrol < 1.4l",0.25,miles,10000,2500,,
-"car, petrol > 1.4l",0.457,miles,10000,4570,,
-"car, diesel < 1.7l",0.234,miles,10000,2340,,
-"car, diesel > 1.7l",0.346,miles,10000,3460,,
-elec (small),0.07,miles,10000,735,BEIS 2018,https://www.gov.uk/government/publications/greenhouse-gas-reporting-conversion-factors-2019
-elec (medium),0.09,miles,10000,856,BEIS 2018,https://www.gov.uk/government/publications/greenhouse-gas-reporting-conversion-factors-2019
-elec (large),0.11,miles,10000,1076,BEIS 2018,https://www.gov.uk/government/publications/greenhouse-gas-reporting-conversion-factors-2019
-Bus,0.197,miles,10000,1970,,
-Train,0.075,miles,10000,750,,
-Air,0.255,miles,10000,2550,,
-standard diet,2200,,,2200,,
-"vegan, min processed, low waste",1100,,,,,
-,,,,33716,,
\ No newline at end of file
diff --git a/carbonator/data/2019.xlsx b/carbonator/data/2019.xlsx
deleted file mode 100644
index 0068d0a6c0b94cffc450e2099a6205dcab7d8c46..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10625
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
Ee<T``ivR!s

diff --git a/carbonator/data/~$2018.xlsx b/carbonator/data/~$2018.xlsx
deleted file mode 100644
index 1da8522e5ad8a88d9fa96f95f17fb336d57a006c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 165
ycmd;aO3hPn%u7ivD$dVSAR6#6I5DI$<S{5PI0DHOAiId6m?0l5q5u@7E(8DwUK4i!

diff --git a/carbonator/data/~$2019.xlsx b/carbonator/data/~$2019.xlsx
deleted file mode 100644
index 1da8522e5ad8a88d9fa96f95f17fb336d57a006c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 165
ycmd;aO3hPn%u7ivD$dVSAR6#6I5DI$<S{5PI0DHOAiId6m?0l5q5u@7E(8DwUK4i!

-- 
GitLab