Skip to content

Instantly share code, notes, and snippets.

@psychemedia
Created December 19, 2012 19:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save psychemedia/4339598 to your computer and use it in GitHub Desktop.
Save psychemedia/4339598 to your computer and use it in GitHub Desktop.
NHS Shiny SitRep Viewer
id name
id_0 A&E closures
id_1 A&E diverts
id_2 Trolley-waits over 12 hours
id_3 Cancelled operations
id_4 Critical care transfers
id_5 Ambulances queuing
id_6 G&A beds
id_7 D&V, Norovirus
id_8 Delayed transfers of care
id_9 Adult critical care
id_10 Paediatric intensive care
id_11 Neonatal intensive care
id_12 Trusts with Ops problems
##nhssitrep/global.R
library(zoo)
library(plyr)
#Loading in CSV directly from https seems to cause problems but this workaround seems okay
floader=function(fn){
temporaryFile <- tempfile()
download.file(fn,destfile=temporaryFile, method="curl")
read.csv(temporaryFile)
}
#get Tables
u="https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=csv&name=nhs_sit_reps&query=select%20*%20from%20%60swdata%60"
sitrep.tables=floader(u)
sha.pct.lookup=read.csv("~/ShinyApps/nhssitrep/data/sha_pct_lookup.csv", header=T)
sha=unique(subset(sha.pct.lookup,select=c('SHA','SHAname')))
aList=sha$SHA
names(aList)=sha$SHAname
db.tables=read.csv("~/ShinyApps/nhssitrep/data/db_tables.csv", header=T)
bList=db.tables$id
names(bList)=db.tables$name
#names(bList)=db.tables$name
#This is the data source - a scraperwiki API call
#It would make sense to abstract this further, eg allowing the creation of the URL based around a passed in a select statement
getData2=function(Code,tid){
q=paste("select * from `fulltable` where Code=='",Code,"' and tid=='",tid,"'",sep='')
#q=paste("select * from `fulltable` where Code=='",Code,"'",sep='')
#u="https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=csv&name=nhs_sit_reps&query=select%20SHA%2CName%2C%20fromDateStr%2CtoDateStr%2C%20tableName%2CfacetB%2Cvalue%20from%20fulltable%20%20where%20Name%20like%20'%25WIGH%25'"
u=paste("https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=csv&name=nhs_sit_reps&query=",URLencode(q),sep='')
print(u)
tmp=floader(u)
tmp$fdate=as.Date(tmp$fromDateStr)
tmp$tdate=as.Date(tmp$toDateStr)
tmp$val=as.integer(tmp$value)
tmp=tmp[order(as.Date(tmp$toDateStr)) , ]
#http://margintale.blogspot.co.uk/2012/04/ggplot2-time-series-heatmaps.html
tmp$year<-as.numeric(as.POSIXlt(tmp$fdate)$year+1900)
# the month too
tmp$month<-as.numeric(as.POSIXlt(tmp$fdate)$mon+1)
# but turn months into ordered facors to control the appearance/ordering in the presentation
tmp$monthf<-factor(tmp$month,levels=as.character(1:12),labels=c("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"),ordered=TRUE)
# the day of week is again easily found
tmp$weekday = as.POSIXlt(tmp$fdate)$wday
# again turn into factors to control appearance/abbreviation and ordering
# I use the reverse function rev here to order the week top down in the graph
# you can cut it out to reverse week order
tmp$weekdayf<-factor(tmp$weekday,levels=rev(0:6),labels=rev(c("Sun","Mon","Tue","Wed","Thu","Fri","Sat")),ordered=TRUE)
# the monthweek part is a bit trickier
# first a factor which cuts the data into month chunks
tmp$yearmonth<-as.yearmon(tmp$fdate)
tmp$yearmonthf<-factor(tmp$yearmonth)
# then find the "week of year" for each day
tmp$week <- as.numeric(format(tmp$fdate,"%W"))
# and now for each monthblock we normalize the week to start at 1
tmp<-ddply(tmp,.(yearmonthf),transform,monthweek=1+week-min(week))
tmp
}
getData=function(sha,tid){
q=paste("select * from `",tid,"` where SHA=='",sha,"'",sep='')
#q=paste("select * from `fulltable` where SHA=='",sha,"' and tid=='",tid,"'",sep='')
#q=paste("select * from `fulltable` where Code=='",Code,"'",sep='')
#u="https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=csv&name=nhs_sit_reps&query=select%20SHA%2CName%2C%20fromDateStr%2CtoDateStr%2C%20tableName%2CfacetB%2Cvalue%20from%20fulltable%20%20where%20Name%20like%20'%25WIGH%25'"
u=paste("https://api.scraperwiki.com/api/1.0/datastore/sqlite?format=csv&name=nhs_sit_reps&query=",URLencode(q),sep='')
print(u)
tmp=floader(u)
tmp$fdate=as.Date(tmp$fromDateStr)
tmp$tdate=as.Date(tmp$toDateStr)
tmp$val=as.integer(tmp$value)
tmp=tmp[order(as.Date(tmp$toDateStr)) , ]
#http://margintale.blogspot.co.uk/2012/04/ggplot2-time-series-heatmaps.html
tmp$year<-as.numeric(as.POSIXlt(tmp$fdate)$year+1900)
# the month too
tmp$month<-as.numeric(as.POSIXlt(tmp$fdate)$mon+1)
# but turn months into ordered facors to control the appearance/ordering in the presentation
tmp$monthf<-factor(tmp$month,levels=as.character(1:12),labels=c("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"),ordered=TRUE)
# the day of week is again easily found
tmp$weekday = as.POSIXlt(tmp$fdate)$wday
# again turn into factors to control appearance/abbreviation and ordering
# I use the reverse function rev here to order the week top down in the graph
# you can cut it out to reverse week order
tmp$weekdayf<-factor(tmp$weekday,levels=rev(0:6),labels=rev(c("Sun","Mon","Tue","Wed","Thu","Fri","Sat")),ordered=TRUE)
# the monthweek part is a bit trickier
# first a factor which cuts the data into month chunks
tmp$yearmonth<-as.yearmon(tmp$fdate)
tmp$yearmonthf<-factor(tmp$yearmonth)
# then find the "week of year" for each day
tmp$week <- as.numeric(format(tmp$fdate,"%W"))
# and now for each monthblock we normalize the week to start at 1
tmp<-ddply(tmp,.(yearmonthf),transform,monthweek=1+week-min(week))
tmp
}
#Load the data and do a bit typecasting, just in case...
#d=floader(u)
#d$fdate=as.Date(d$fromDateStr)
#d$val=as.integer(d$value)
#d$tdate=as.Date(d$toDateStr)
##nhssitrep/server.R
library(shiny)
library(ggplot2)
# Define server logic
shinyServer(function(input, output) {
results.data <- reactive(function(){
getData(input$sha,input$rep)
})
output$tbl <- reactiveUI(function() {
#cities <- getNearestCities(input$lat, input$long)
#checkboxGroupInput("cities", "Choose Cities", cities)
tmp= subset(sha.pct.lookup,SHA==input$sha,select=c('Code','Name'))
tmp$Code=factor(tmp$Code)
tmp$Name=factor(tmp$Name)
tList=tmp$Code
#tList=tmp$Name
names(tList)=tmp$Name
selectInput("tbl", "Trust:",tList)
})
#Do a simple barchart of data in the selected table.
#Where there are "subtables", display these using the faceted view
output$testPlot = reactivePlot(function() {
d=results.data()
g=ggplot(subset(d,fdate>as.Date('2012-11-01') & Code==input$tbl))
g=g+geom_bar(aes(x=fdate,y=val),stat='identity')+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+theme(axis.text.x=element_text(angle=-90),legend.position="none")#+labs(title="Isle of Wight NHS Trust")
##g=g+scale_y_discrete(breaks=0:10)
g=g+xlab(NULL)+ylab('Number')
print(g)
})
output$testPlot2 = reactivePlot(function() {
d=results.data()
g=ggplot(subset(d,fdate>as.Date('2012-11-01') ))
g=g+geom_bar(aes(x=fdate,y=val,fill=Name),stat='identity')+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+theme(axis.text.x=element_text(angle=-90),legend.position='bottom')#+labs(title="Isle of Wight NHS Trust")
##g=g+scale_y_discrete(breaks=0:10)
#g=g+guide_legend(title = NULL)
g=g+scale_fill_discrete(guide = guide_legend(title = NULL,ncol=2))
g=g+xlab(NULL)+ylab('Number')
print(g)
})
output$pctLineChart = reactivePlot(function() {
d=results.data()
g=ggplot(subset(d,fdate>as.Date('2012-11-01') & Code==input$tbl))
g=g+geom_line(aes(x=fdate,y=val))+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+theme(axis.text.x=element_text(angle=-90),legend.position='bottom')
#g=g+guides(colour = guide_legend(title = NULL,ncol=2))#scale_y_discrete(guide = guide_legend(title = NULL,ncol=2))
g=g+xlab(NULL)+ylab('Number')
g=g+geom_point(aes(x=fdate,y=val),size=1)
print(g)
})
output$dayPlot = reactivePlot(function() {
d=results.data()
g=ggplot(subset(d,fdate>as.Date('2012-11-01') & Code==input$tbl))
g=g+geom_boxplot(aes(x=weekdayf,y=val))
g=g+geom_point(aes(x=weekdayf,y=val),position = position_jitter(w = 0.3, h = 0))+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+xlab(NULL)+ylab('Number')
print(g)
})
output$shaLineChart = reactivePlot(function() {
d=results.data()
g=ggplot(subset(d,fdate>as.Date('2012-11-01') ))
g=g+geom_line(aes(x=fdate,y=val,group=Name,col=Name))+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+theme(axis.text.x=element_text(angle=-90),legend.position='bottom')
g=g+guides(colour = guide_legend(title = NULL,ncol=2))#scale_y_discrete(guide = guide_legend(title = NULL,ncol=2))
g=g+xlab(NULL)+ylab('Number')
g=g+geom_point(data=subset(d,Code==input$tbl),aes(x=fdate,y=val),size=1)
print(g)
})
output$shaBoxPlot = reactivePlot(function() {
d=results.data()
#Wordwrapper via:
#http://stackoverflow.com/questions/2351744/insert-line-breaks-in-long-string-word-wrap
limiter=function(x) gsub('(.{1,15})(\\s|$)', '\\1\n', x)
d$sName=sapply(d$Name,limiter)
g=ggplot(subset(d,fdate>as.Date('2012-11-01') ))
g=g+geom_boxplot(aes(x=sName,y=val))+facet_wrap(~tableName+facetB,scales = "free_y")
g=g+theme(axis.text.x=element_text(angle=-90,vjust = 0.5,size=5),legend.position='bottom')
g=g+xlab(NULL)+ylab('Number')
g=g+geom_boxplot(data=subset(d,Code==input$tbl),aes(x=sName,y=val),col='red')
print(g)
})
#It would probable make sense to reshape the data presented in this table
#For example, define columns based on facetB values, so we have one row per date range
#I also need to sort the table by date
output$view = reactiveTable(function() {
d=results.data()
if (nrow(d)!=0)
subset(d,tid==input$rep & Code==input$tbl,select=c('Name','fromDateStr','toDateStr','tableName','facetB','value'))
else data.frame('Please select a report...')
}, include.rownames=FALSE)
downloadData <- reactive(function() {
ds=results.data()
if (input$pctdownonly==TRUE)
ds=subset(ds,tid==input$rep & Code==input$tbl,select=c('Name','fromDateStr','toDateStr','tableName','facetB','value'))
ds
})
output$downloadData <- downloadHandler(
filename = function() { if (input$pctdownonly==FALSE) paste(input$sha,'_',input$rep, '.csv', sep='') else paste(input$tbl,'_',input$rep, '.csv', sep='') },
content = function(file) {
write.csv(downloadData(), file, row.names=FALSE)
})
})
SHA Code Name SHAname
1 Q30 RR7 GATESHEAD HEALTH NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
2 Q30 RTF NORTHUMBRIA HEALTHCARE NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
3 Q30 RTR SOUTH TEES HOSPITALS NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
4 Q30 RTD THE NEWCASTLE UPON TYNE HOSPITALS NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
5 Q30 RE9 SOUTH TYNESIDE NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
6 Q30 RLN CITY HOSPITALS SUNDERLAND NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
7 Q30 RVW NORTH TEES AND HARTLEPOOL NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
8 Q30 RXP COUNTY DURHAM AND DARLINGTON NHS FOUNDATION TRUST NORTH EAST STRATEGIC HEALTH AUTHORITY
9 Q31 RM3 SALFORD ROYAL NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
10 Q31 RW3 CENTRAL MANCHESTER UNIVERSITY HOSPITALS NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
11 Q31 RRF WRIGHTINGTON, WIGAN AND LEIGH NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
12 Q31 RBL WIRRAL UNIVERSITY TEACHING HOSPITAL NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
13 Q31 RJR COUNTESS OF CHESTER HOSPITAL NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
14 Q31 RW6 PENNINE ACUTE HOSPITALS NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
15 Q31 RBT MID CHESHIRE HOSPITALS NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
16 Q31 RVY SOUTHPORT AND ORMSKIRK HOSPITAL NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
17 Q31 RWJ STOCKPORT NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
18 Q31 RM2 UNIVERSITY HOSPITAL OF SOUTH MANCHESTER NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
19 Q31 RNL NORTH CUMBRIA UNIVERSITY HOSPITALS NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
20 Q31 RXL BLACKPOOL TEACHING HOSPITALS NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
21 Q31 REP LIVERPOOL WOMEN'S NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
22 Q31 RTX UNIVERSITY HOSPITALS OF MORECAMBE BAY NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
23 Q31 RET THE WALTON CENTRE NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
24 Q31 RMP TAMESIDE HOSPITAL NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
25 Q31 RBS ALDER HEY CHILDREN'S NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
26 Q31 RXR EAST LANCASHIRE HOSPITALS NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
27 Q31 RMC BOLTON NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
28 Q31 RJN EAST CHESHIRE NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
29 Q31 REM AINTREE UNIVERSITY HOSPITAL NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
30 Q31 RBN ST HELENS AND KNOWSLEY HOSPITALS NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
31 Q31 RBQ LIVERPOOL HEART AND CHEST NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
32 Q31 RWW WARRINGTON AND HALTON HOSPITALS NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
33 Q31 RQ6 ROYAL LIVERPOOL AND BROADGREEN UNIVERSITY HOSPITALS NHS TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
34 Q31 RXN LANCASHIRE TEACHING HOSPITALS NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
35 Q31 RBV THE CHRISTIE NHS FOUNDATION TRUST NORTH WEST STRATEGIC HEALTH AUTHORITY
36 Q32 RR8 LEEDS TEACHING HOSPITALS NHS TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
37 Q32 RXF MID YORKSHIRE HOSPITALS NHS TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
38 Q32 RFR THE ROTHERHAM NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
39 Q32 RCB YORK TEACHING HOSPITAL NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
40 Q32 RJL NORTHERN LINCOLNSHIRE AND GOOLE HOSPITALS NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
41 Q32 RWA HULL AND EAST YORKSHIRE HOSPITALS NHS TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
42 Q32 RCD HARROGATE AND DISTRICT NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
43 Q32 RP5 DONCASTER AND BASSETLAW HOSPITALS NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
44 Q32 RAE BRADFORD TEACHING HOSPITALS NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
45 Q32 RFF BARNSLEY HOSPITAL NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
46 Q32 RCU SHEFFIELD CHILDREN'S NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
47 Q32 RCF AIREDALE NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
48 Q32 RWY CALDERDALE AND HUDDERSFIELD NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
49 Q32 RHQ SHEFFIELD TEACHING HOSPITALS NHS FOUNDATION TRUST YORKSHIRE AND THE HUMBER STRATEGIC HEALTH AUTHORITY
50 Q33 RNQ KETTERING GENERAL HOSPITAL NHS FOUNDATION TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
51 Q33 RTG DERBY HOSPITALS NHS FOUNDATION TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
52 Q33 RWE UNIVERSITY HOSPITALS OF LEICESTER NHS TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
53 Q33 RWD UNITED LINCOLNSHIRE HOSPITALS NHS TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
54 Q33 RFS CHESTERFIELD ROYAL HOSPITAL NHS FOUNDATION TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
55 Q33 RNS NORTHAMPTON GENERAL HOSPITAL NHS TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
56 Q33 RK5 SHERWOOD FOREST HOSPITALS NHS FOUNDATION TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
57 Q33 RX1 NOTTINGHAM UNIVERSITY HOSPITALS NHS TRUST EAST MIDLANDS STRATEGIC HEALTH AUTHORITY
58 Q34 RXK SANDWELL AND WEST BIRMINGHAM HOSPITALS NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
59 Q34 RL4 THE ROYAL WOLVERHAMPTON NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
60 Q34 RWP WORCESTERSHIRE ACUTE HOSPITALS NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
61 Q34 RQ3 BIRMINGHAM CHILDREN'S HOSPITAL NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
62 Q34 RRK UNIVERSITY HOSPITALS BIRMINGHAM NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
63 Q34 RNA THE DUDLEY GROUP NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
64 Q34 RBK WALSALL HEALTHCARE NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
65 Q34 RLQ WYE VALLEY NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
66 Q34 RJC SOUTH WARWICKSHIRE NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
67 Q34 RJE UNIVERSITY HOSPITAL OF NORTH STAFFORDSHIRE NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
68 Q34 RJD MID STAFFORDSHIRE NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
69 Q34 RR1 HEART OF ENGLAND NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
70 Q34 RJF BURTON HOSPITALS NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
71 Q34 RKB UNIVERSITY HOSPITALS COVENTRY AND WARWICKSHIRE NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
72 Q34 RLU BIRMINGHAM WOMEN'S NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
73 Q34 RRJ THE ROYAL ORTHOPAEDIC HOSPITAL NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
74 Q34 RL1 THE ROBERT JONES AND AGNES HUNT ORTHOPAEDIC HOSPITAL NHS FOUNDATION TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
75 Q34 RLT GEORGE ELIOT HOSPITAL NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
76 Q34 RXW SHREWSBURY AND TELFORD HOSPITAL NHS TRUST WEST MIDLANDS STRATEGIC HEALTH AUTHORITY
77 Q35 RGR WEST SUFFOLK NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
78 Q35 RCX THE QUEEN ELIZABETH HOSPITAL, KING'S LYNN, NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
79 Q35 RQQ HINCHINGBROOKE HEALTH CARE NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
80 Q35 RC9 LUTON AND DUNSTABLE HOSPITAL NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
81 Q35 RAJ SOUTHEND UNIVERSITY HOSPITAL NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
82 Q35 RWH EAST AND NORTH HERTFORDSHIRE NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
83 Q35 RGQ IPSWICH HOSPITAL NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
84 Q35 RGT CAMBRIDGE UNIVERSITY HOSPITALS NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
85 Q35 RQ8 MID ESSEX HOSPITAL SERVICES NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
86 Q35 RGM PAPWORTH HOSPITAL NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
87 Q35 RM1 NORFOLK AND NORWICH UNIVERSITY HOSPITALS NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
88 Q35 RGP JAMES PAGET UNIVERSITY HOSPITALS NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
89 Q35 RC1 BEDFORD HOSPITAL NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
90 Q35 RDE COLCHESTER HOSPITAL UNIVERSITY NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
91 Q35 RDD BASILDON AND THURROCK UNIVERSITY HOSPITALS NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
92 Q35 RQW THE PRINCESS ALEXANDRA HOSPITAL NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
93 Q35 RWG WEST HERTFORDSHIRE HOSPITALS NHS TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
94 Q35 RGN PETERBOROUGH AND STAMFORD HOSPITALS NHS FOUNDATION TRUST EAST OF ENGLAND STRATEGIC HEALTH AUTHORITY
95 Q36 RP4 GREAT ORMOND STREET HOSPITAL FOR CHILDREN NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
96 Q36 RF4 BARKING, HAVERING AND REDBRIDGE UNIVERSITY HOSPITALS NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
97 Q36 RQX HOMERTON UNIVERSITY HOSPITAL NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
98 Q36 RAP NORTH MIDDLESEX UNIVERSITY HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
99 Q36 RAX KINGSTON HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
100 Q36 RAN ROYAL NATIONAL ORTHOPAEDIC HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
101 Q36 R1H BARTS HEALTH NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
102 Q36 RAS THE HILLINGDON HOSPITALS NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
103 Q36 RVL BARNET AND CHASE FARM HOSPITALS NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
104 Q36 RP6 MOORFIELDS EYE HOSPITAL NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
105 Q36 RV8 NORTH WEST LONDON HOSPITALS NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
106 Q36 RJ7 ST GEORGE'S HEALTHCARE NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
107 Q36 RC3 EALING HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
108 Q36 RQM CHELSEA AND WESTMINSTER HOSPITAL NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
109 Q36 RJ6 CROYDON HEALTH SERVICES NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
110 Q36 RJZ KING'S COLLEGE HOSPITAL NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
111 Q36 RYQ SOUTH LONDON HEALTHCARE NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
112 Q36 RJ1 GUY'S AND ST THOMAS' NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
113 Q36 RJ2 LEWISHAM HEALTHCARE NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
114 Q36 RKE THE WHITTINGTON HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
115 Q36 RAL ROYAL FREE LONDON NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
116 Q36 RYJ IMPERIAL COLLEGE HEALTHCARE NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
117 Q36 RVR EPSOM AND ST HELIER UNIVERSITY HOSPITALS NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
118 Q36 RPY THE ROYAL MARSDEN NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
119 Q36 RT3 ROYAL BROMPTON AND HAREFIELD NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
120 Q36 RFW WEST MIDDLESEX UNIVERSITY HOSPITAL NHS TRUST LONDON STRATEGIC HEALTH AUTHORITY
121 Q36 RRV UNIVERSITY COLLEGE LONDON HOSPITALS NHS FOUNDATION TRUST LONDON STRATEGIC HEALTH AUTHORITY
122 Q37 RTK ASHFORD AND ST PETER'S HOSPITALS NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
123 Q37 RTP SURREY AND SUSSEX HEALTHCARE NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
124 Q37 RPA MEDWAY NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
125 Q37 RXC EAST SUSSEX HEALTHCARE NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
126 Q37 RA2 ROYAL SURREY COUNTY HOSPITAL NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
127 Q37 RWF MAIDSTONE AND TUNBRIDGE WELLS NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
128 Q37 RXH BRIGHTON AND SUSSEX UNIVERSITY HOSPITALS NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
129 Q37 RPC QUEEN VICTORIA HOSPITAL NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
130 Q37 RYR WESTERN SUSSEX HOSPITALS NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
131 Q37 RVV EAST KENT HOSPITALS UNIVERSITY NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
132 Q37 RDU FRIMLEY PARK HOSPITAL NHS FOUNDATION TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
133 Q37 RN7 DARTFORD AND GRAVESHAM NHS TRUST SOUTH EAST COAST STRATEGIC HEALTH AUTHORITY
134 Q38 R1F ISLE OF WIGHT NHS TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
135 Q38 RTH OXFORD UNIVERSITY HOSPITALS NHS TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
136 Q38 RHU PORTSMOUTH HOSPITALS NHS TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
137 Q38 RHW ROYAL BERKSHIRE NHS FOUNDATION TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
138 Q38 RHM UNIVERSITY HOSPITAL SOUTHAMPTON NHS FOUNDATION TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
139 Q38 RN5 HAMPSHIRE HOSPITALS NHS FOUNDATION TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
140 Q38 RD8 MILTON KEYNES HOSPITAL NHS FOUNDATION TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
141 Q38 RD7 HEATHERWOOD AND WEXHAM PARK HOSPITALS NHS FOUNDATION TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
142 Q38 RXQ BUCKINGHAMSHIRE HEALTHCARE NHS TRUST SOUTH CENTRAL STRATEGIC HEALTH AUTHORITY
143 Q39 RBA TAUNTON AND SOMERSET NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
144 Q39 RTE GLOUCESTERSHIRE HOSPITALS NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
145 Q39 RA4 YEOVIL DISTRICT HOSPITAL NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
146 Q39 RA3 WESTON AREA HEALTH NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
147 Q39 RH8 ROYAL DEVON AND EXETER NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
148 Q39 RBD DORSET COUNTY HOSPITAL NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
149 Q39 RVJ NORTH BRISTOL NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
150 Q39 RNZ SALISBURY NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
151 Q39 RD3 POOLE HOSPITAL NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
152 Q39 RN3 GREAT WESTERN HOSPITALS NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
153 Q39 RA7 UNIVERSITY HOSPITALS BRISTOL NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
154 Q39 RA9 SOUTH DEVON HEALTHCARE NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
155 Q39 REF ROYAL CORNWALL HOSPITALS NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
156 Q39 RDZ THE ROYAL BOURNEMOUTH AND CHRISTCHURCH HOSPITALS NHS FOUNDATION TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
157 Q39 RK9 PLYMOUTH HOSPITALS NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
158 Q39 RD1 ROYAL UNITED HOSPITAL BATH NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
159 Q39 RBZ NORTHERN DEVON HEALTHCARE NHS TRUST SOUTH WEST STRATEGIC HEALTH AUTHORITY
##nhssitrep/ui.R
library(shiny)
#tList=levels(d$tableName)
#names(tList) = tList
# Define UI for application that plots random distributions
shinyUI(pageWithSidebar(
# Application title
headerPanel("NHS Trust Sit Rep Explorer"),
sidebarPanel(
selectInput("sha", "SHA:",aList),
uiOutput("tbl"),
checkboxInput("pctdownonly", "Only download this Trust's data", FALSE),
selectInput("rep", "Report:",bList),
downloadButton('downloadData', 'Download Report Data'),
#selectInput("tbl", "Report:",tList),
div("This demo provides a crude graphical view over data extracted from",
a(href='http://transparency.dh.gov.uk/2012/10/26/winter-pressures-daily-situation-reports-2012-13/',
"NHS Winter pressures daily situation reports") ),
div("The data is pulled in from a scraped version of the data stored on Scraperwiki",
a(href="https://scraperwiki.com/scrapers/nhs_sit_reps/","NHS Sit Reps")),
div(em("Commentary on the data:"),"'On the columns, where we have a weekend, all items apart from beds figures are summed across the weekend (eg number of diverts in place over the weekend, number of cancelled ops). Beds figures (including beds closed to norovirus) are snapshots at the collection time (i.e 8am on the Monday morning).'")
),
mainPanel(
tabsetPanel(
tabPanel("SHA Stacked Barchart", plotOutput("testPlot2")),
tabPanel("SHA Linechart", plotOutput("shaLineChart")),
tabPanel("SHA BoxPlot", plotOutput("shaBoxPlot"))
),
tabsetPanel(
tabPanel("PCT Barchart",plotOutput("testPlot")),
tabPanel("PCT Linechart",plotOutput("pctLineChart")),
tabPanel("PCT Daily Boxplot",plotOutput("dayPlot")),
tabPanel("PCT Datatable",tableOutput("view"))
)
)
))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment