Clean some things up and get ready for Shiny.
This commit is contained in:
26
ledgerr-shiny/server.R
Normal file
26
ledgerr-shiny/server.R
Normal file
@ -0,0 +1,26 @@
|
||||
#
|
||||
# This is the server logic of a Shiny web application. You can run the
|
||||
# application by clicking 'Run App' above.
|
||||
#
|
||||
# Find out more about building applications with Shiny here:
|
||||
#
|
||||
# http://shiny.rstudio.com/
|
||||
#
|
||||
|
||||
library(shiny)
|
||||
|
||||
# Define server logic required to draw a histogram
|
||||
shinyServer(function(input, output) {
|
||||
|
||||
output$distPlot <- renderPlot({
|
||||
|
||||
# generate bins based on input$bins from ui.R
|
||||
x <- faithful[, 2]
|
||||
bins <- seq(min(x), max(x), length.out = input$bins + 1)
|
||||
|
||||
# draw the histogram with the specified number of bins
|
||||
hist(x, breaks = bins, col = 'darkgray', border = 'white')
|
||||
|
||||
})
|
||||
|
||||
})
|
33
ledgerr-shiny/ui.R
Normal file
33
ledgerr-shiny/ui.R
Normal file
@ -0,0 +1,33 @@
|
||||
#
|
||||
# This is the user-interface definition of a Shiny web application. You can
|
||||
# run the application by clicking 'Run App' above.
|
||||
#
|
||||
# Find out more about building applications with Shiny here:
|
||||
#
|
||||
# http://shiny.rstudio.com/
|
||||
#
|
||||
|
||||
library(shiny)
|
||||
|
||||
# Define UI for application that draws a histogram
|
||||
shinyUI(fluidPage(
|
||||
|
||||
# Application title
|
||||
titlePanel("Old Faithful Geyser Data"),
|
||||
|
||||
# Sidebar with a slider input for number of bins
|
||||
sidebarLayout(
|
||||
sidebarPanel(
|
||||
sliderInput("bins",
|
||||
"Number of bins:",
|
||||
min = 1,
|
||||
max = 50,
|
||||
value = 30)
|
||||
),
|
||||
|
||||
# Show a plot of the generated distribution
|
||||
mainPanel(
|
||||
plotOutput("distPlot")
|
||||
)
|
||||
)
|
||||
))
|
20
working.Rmd
20
working.Rmd
@ -9,12 +9,17 @@ output: html_document
|
||||
knitr::opts_chunk$set(echo = TRUE)
|
||||
```
|
||||
|
||||
Should use this document for actual operations and keep actual functions in another document for the public [GitHub repo](https://github.com/mattbk/ledgerr). Shiny will be set up at https://www.shinyapps.io/admin/#/dashboard.
|
||||
|
||||
```{r}
|
||||
# Use https://github.com/maxconway/gsheet
|
||||
library(gsheet)
|
||||
|
||||
# Use the functions in ledgerr (the package that is part of this project) but don't load the package itself--this will let us deploy to Shiny.io more easily.
|
||||
library(R.utils) #for sourceDirectory()
|
||||
sourceDirectory("ledgerr/R")
|
||||
|
||||
# For Shiny
|
||||
library(rsconnect)
|
||||
|
||||
# Pull Google sheet locations from another file (journal1, journal2, etc.)
|
||||
source("config.R")
|
||||
|
||||
@ -39,15 +44,18 @@ journal$Credit<-as.numeric(sub(",","",journal$Credit))
|
||||
|
||||
################# work in progress
|
||||
|
||||
# This could replace net.acc, check numbers
|
||||
## This could replace net.acc, check numbers
|
||||
a<-aggregate(cbind(Credit,Debit=-Debit)~Account,data=journal,function(x) sum(x, na.rm=TRUE),na.action="na.pass")
|
||||
# Select by class (modify to include dates)
|
||||
#a<-aggregate(cbind(Credit,Debit=-Debit)~Account,data=journal[journal$Class %in% "Bikecicle",],function(x) sum(x, na.rm=TRUE),na.action="na.pass")
|
||||
# na.pass: http://stackoverflow.com/a/16844940/2152245
|
||||
# This is a column rename on the fly: "Debit=-Debit"
|
||||
# Calculate net column
|
||||
a$Net<-rowSums(a[,2:3],na.rm=T)
|
||||
# Calculate total--need to clean up
|
||||
colSums(a[-1])
|
||||
|
||||
# This is a column rename on the fly: "Debit=-Debit"
|
||||
|
||||
|
||||
# This could replace net.class, check numbers
|
||||
a<-aggregate(cbind(Credit,Debit=-Debit)~Class,data=journal,function(x) sum(x, na.rm=TRUE),na.action="na.pass")
|
||||
@ -56,9 +64,5 @@ a$Net<-rowSums(a[,2:3],na.rm=T)
|
||||
# Calculate total--need to clean up
|
||||
colSums(a[-1])
|
||||
|
||||
# This could also replace net.class if in the right layout (http://nicercode.github.io/guides/repeating-things/)
|
||||
class.split<-split(journal,journal$Class)
|
||||
sapply(class.split, net)
|
||||
|
||||
|
||||
```
|
Reference in New Issue
Block a user