---
title: "ANLY 512: Data Visualization Dashboard Laboratory"
author: "Xueting Han"
date: "`r Sys.Date()`"
output:
flexdashboard::flex_dashboard:
social: menu
source_code: embed
---
```{r message=FALSE, warning=FALSE}
library(flexdashboard)
library(quantmod)
library(dygraphs)
library(lubridate)
library(plyr)
library(DT)
```
### Alibaba
```{r message=FALSE, warning=FALSE}
startdate<-ymd("2015-01-01")
invisible(getSymbols("BABA", src = "yahoo", from=startdate))
Alibaba<-BABA[,-5]
colnames(Alibaba)<-c("Open","High","Low","Close","Adjusted")
```
```{r message=FALSE, warning=FALSE}
dygraph(Alibaba, main = "Alibaba") %>%
dyAxis("y", label="Price(USD)") %>%
dyOptions(axisLineWidth = 1.5, colors = RColorBrewer::brewer.pal(5, "Set1")) %>%
dyCandlestick()
```
### Amazon
```{r message=FALSE, warning=FALSE}
startdate<-ymd("2015-01-01")
invisible(getSymbols("AMZN", src = "yahoo", from=startdate))
Amazon<-AMZN[,-5]
colnames(Amazon)<-c("Open","High","Low","Close","Adjusted")
```
```{r message=FALSE, warning=FALSE}
dygraph(Amazon, main = "Amazon") %>%
dyAxis("y", label="Price(USD)") %>%
dyOptions(axisLineWidth = 1.5, colors = RColorBrewer::brewer.pal(5, "Set1")) %>%
dyCandlestick()
```
### Facebook
```{r message=FALSE, warning=FALSE}
startdate<-ymd("2015-01-01")
invisible(getSymbols("FB", src = "yahoo", from=startdate))
Facebook<-FB[,-5]
colnames(Facebook)<-c("Open","High","Low","Close","Adjusted")
```
```{r message=FALSE, warning=FALSE}
dygraph(Facebook, main = "Facebook") %>%
dyAxis("y", label="Price(USD)") %>%
dyOptions(axisLineWidth = 1.5, colors = RColorBrewer::brewer.pal(5, "Set1")) %>%
dyCandlestick()
```
### Macy's
```{r message=FALSE, warning=FALSE}
startdate<-ymd("2015-01-01")
invisible(getSymbols("M", src = "yahoo", from=startdate))
Macy<-M[,-5]
colnames(Macy)<-c("Open","High","Low","Close","Adjusted")
```
```{r message=FALSE, warning=FALSE}
dygraph(Macy, main = "Macy's") %>%
dyAxis("y", label="Price(USD)") %>%
dyOptions(axisLineWidth = 1.5, colors = RColorBrewer::brewer.pal(5, "Set1")) %>%
dyCandlestick()
```
Column {data-width=500}
-------------------------------------------------------------------
```{r message=FALSE, warning=FALSE}
what_metrics <- yahooQF(c("Price/Sales",
"P/E Ratio",
"Previous Close","52-week Low", "52-week High",
"Market Capitalization"))
tickers <- c("BABA", "AMZN", "FB", "M")
metrics <- getQuote(paste(tickers, sep="", collapse=";"), what=what_metrics)
#Add tickers as the first column and remove the first column which had date stamps
metrics <- data.frame(Symbol=tickers, metrics[,2:length(metrics)])
#Change colnames
colnames(metrics) <- c("Revenue Multiple", "Earnings Multiple","Previous Close","52-week Low", "52-week High","Market Cap")
DT::datatable(metrics)
```
### Stock Closing Prices
```{r,echo=FALSE, message = FALSE}
ticker <- c("BABA", "AMZN", "FB", "M")
invisible(getSymbols(ticker, from="2016-05-01", to="2018-10-01"))
ClosingPrices <- do.call(merge, lapply(ticker, function(x) Cl(get(x))))
dateperiod<-c("2016-05-01", "2018-10-01")
dygraph(ClosingPrices, main="Closing Price in Dollars", group="Stock") %>%
dyAxis("y", label="Closing Price(USD)") %>%
dyOptions(axisLineWidth = 2.0, colors = RColorBrewer::brewer.pal(5, "Set1")) %>%
dyHighlight(highlightSeriesBackgroundAlpha = 1.0,
highlightSeriesOpts = list(strokeWidth = 3)) %>%
dyRangeSelector(height = 65)
```