Apresentando os resultados

Questão 1

MRT_1F <-c(517.1468515630205, 85.13094142168089, 30.333207896694553, 12.694776264558937, 3.3041601673945418, 1.1823111717498882, 1.1892293502386786)
MRT_3F <-c(156.68929936163462, 11.540837783562276, 0.4512835621696538, 0.4509797929766453, 0.4502068233039181, 0.4496185276300172, 0.4543157082191288)
MRT_5F <-c(83.90319666471157, 0.3068151086494968, 0.30522314133037304, 0.3072588968084928, 0.30655265997285697, 0.3055812715727718, 0.3053297166713006)
MRT_10F <-c(29.55430642951759, 0.19832832665772515, 0.1971923924717474, 0.19796648905716516, 0.19615594370806338, 0.2034569237883263, 0.19617420889447737)
MRT_15F <-c(11.317736530583566, 0.167364215666193, 0.16172168266811013, 0.16701085329580515, 0.1598052657153692, 0.1645934043532696, 0.16216563797118075)
MRT_sem_F <-c(11.93430909937736, 0.6095414637034009, 0.6060645101029295, 0.612167181646899, 0.6146761002685637, 0.6096747087200697, 0.6125810476877268)
clock <- c(0.1, 0.5, 1, 1.5, 2, 2.5, 3)



plot(clock, MRT_1F, type="o", pch=4, ylab = "Response Time (sec.)", xlab = "Time between Things requests (seconds)")
lines(clock, MRT_3F, type="o", pch=11, col="yellow")
lines(clock, MRT_5F, type="o", pch=1, col="red")
lines(clock, MRT_10F, type="o", pch=2, col="blue")
lines(clock, MRT_15F, type="o", pch=5, col="purple")
lines(clock, MRT_sem_F, type="o", pch=4, col="green")
legend("topright", pch = c(4, 11, 1, 2, 5, 4), 
       col = c("black", "yellow", "red", "blue", "purple", "green"),
       legend = c("1 Fog", "3 Fogs", "5 Fogs", "10 Fogs", "15 Fogs", "w/o Fog"))

bar_color = c("#E6E6E6", "#666666") 


layout(mat=matrix(c(1, 2,
                    3, 4,
                    5, 0), nrow=3, ncol=2, byrow=TRUE),
       heights = c(96,96,96),
       widths = c(1, 1))


my_barplot <- function(data1, data2, legend_) {
barplot(t(matrix(c(data1, data2), ncol = 2)), beside = TRUE, log = "y", col= bar_color,
        ylab = "Response time (sec.)", xlab = "Time between Things requests", names.arg = clock)
legend("topright",  pch = c(15,15), col = bar_color, legend = legend_)
} 

my_barplot(MRT_sem_F, MRT_1F, c("w/o Fog", "1 Fog"))
my_barplot(MRT_sem_F, MRT_3F, c("w/o Fog", "3 Fogs"))
my_barplot(MRT_sem_F, MRT_5F, c("w/o Fog", "5 Fogs"))
my_barplot(MRT_sem_F, MRT_10F, c("w/o Fog", "10 Fogs"))
my_barplot(MRT_sem_F, MRT_15F, c("w/o Fog", "15 Fogs"))

Questão 2

meal.price <- c("$10-19", "$20-29", "$30-39", "$40-49")
quality.rating <- c("Good", "Very Good", "Excellent")
values <- matrix(c(53.8, 33.9, 2.6, 0.0, 43.6, 54.2, 60.5, 21.4, 2.6, 11.9, 36.8, 78.6), nrow = 3, ncol = 4, byrow = TRUE)
par(mar=c(5.1, 4.1, 4.1, 8.1), xpd=TRUE)
barplot(values, col = rainbow(3), main="Meal Quality", xlab = "Meal Price", ylab="Percentage", names.arg=meal.price)
legend("topright", inset=c(-0.3,0), legend=quality.rating, pch=c(15, 15, 15), col = rainbow(3))

Questão 3

airquality.may.temp <- airquality[airquality$Month==5,]$Temp
airquality.may.temp <- (airquality.may.temp - 32) / 1.8
hist(airquality.may.temp, col="grey", xlab = "Temperatura", ylab = "Densidade", main = "Temperaturas observadas no mês de maio", freq = FALSE)
densidade.Temp <- density(airquality.may.temp)
lines(densidade.Temp)

Questão 4

sales <- read.table("https://training-course-material.com/images/8/8f/Sales.txt",header=TRUE)
pct <- round(sales$SALES * 100 / sum(sales$SALES), 2)
lbls <- paste(pct, "%", sep="")
pie(sales$SALES, lbls, col=rainbow(nrow(sales)), main = "Vendas por país")
legend("topright", legend = sales$COUNTRY, pch=rep(c(15), times=nrow(sales)),
       col =rainbow(nrow(sales)))

Questão 5

boxplot(count ~ spray, data=InsectSprays, outline=FALSE, main = "Eficácia dos Sprays contra Insetos", xlab="Tipo do Spray", ylab = "Insetos", col="yellow")

Questão 6

library(tidyr)
temp.file <- tempfile()
download.file("https://www.dropbox.com/s/rz4195mxyblr5hn/monitoringCloudData.zip?dl=1",
              temp.file)
unzip(temp.file)
unlink(temp.file)

to_MB <- function(mem_used, men_unit) {
  result <- (men_unit=="MB") * mem_used
  result <- result + (men_unit=="GB") * mem_used * 1024
  return(result)
}


plot_monitorin_cloud <- function(file.name, main) {
  mcd <- read.csv(file.name)
  mcd$currentTime <- as.numeric(apply(data.frame(currentTime=mcd$currentTime), MARGIN = 1, FUN=function(x){
    return(difftime(x["currentTime"], mcd$currentTime[1], units = 'hours'))}))
  mcd <- separate(mcd, usedMemory, into = c("Mem_used","Mem_unit"), sep="[0-9.]+", remove=FALSE)
  mcd <- separate(mcd, usedMemory, into = c("Mem_used"), sep="[A-Za-z][A-Za-z]", remove=FALSE)
  unique(mcd$Mem_unit)
  mcd$Mem_used <- as.numeric(mcd$Mem_used)
  mcd$Mem_used_MB <- to_MB(mcd$Mem_used, mcd$Mem_unit)
  plot(mcd$currentTime, mcd$Mem_used_MB, type="l", ylab = "Used Memory (MB)",
       xlab = "Time (hour)", main = paste("Memory Analysis (", main, ")", 
                                          sep = ""),
       cex.lab=1.5, cex.axis=1.5, cex.main=2)
  
}

layout(mat=matrix(c(1, 2,
                    3, 4,
                    5, 0), nrow=3, ncol=2, byrow=TRUE),
       heights = c(96,96,96),
       widths = c(1, 1))

files = c("monitoringCloudData_NONE.csv",
          "monitoringCloudData_0.1.csv",
          "monitoringCloudData_0.5.csv",
          "monitoringCloudData_1.csv") 
main_titles = c("None Workload",
                "NoneWorkload of 0.1",
                "NoneWorkload of 0.5",
                "NoneWorkload of 1.0") 
for (i in 1:4) {
  plot_monitorin_cloud(files[i], main_titles[i])
}

Questão 7

# install.packages("plotly")
library(dplyr)
library(plotly)
temp.file <- tempfile()
download.file("https://www.dropbox.com/s/bso7ierg8oyjjun/netflix_titles.csv?dl=1",
              temp.file)
netflix <- read.csv(temp.file)
unlink(temp.file)
netflix_one_country <- netflix %>% filter(country != "" & !(grepl(",", country))) %>% group_by(country) %>%summarise(ocorrencias = n()) %>% arrange(desc(ocorrencias))
netflix_one_country <- netflix_one_country[1:10,]
fig <-plot_ly(data=netflix_one_country, labels=~country, values=~ocorrencias, type='pie')
fig

Questão 8

plot_ly(type = 'table',
        columnwidth = c(35, 35),
        columnorder = c(0, 1),
        header = list(
          values = c("País","Total de Conteúdos"),
          fill = list(color = c("grey", "grey")),
          align = c("center", "center"),
          line = list(width= 1.5, color = 'black'),
          font=list(family= "Arial",size= 14, color = c("white"))
        ),
        cells = list(
          values=rbind(netflix_one_country$country,netflix_one_country$ocorrencias),
          align= c("center", "center"),
          line=list(width= 1.5, color = 'black'),font=list(family= "Arial",size= 14, color = c("black"))
        )
)

Questão 9

library(tidyr)
netflix_release <- netflix %>% select(type, release_year)
netflix_release$decada <- floor(netflix_release$release_year / 10.0) * 10
netflix_release <- netflix_release[, -2]
netflix_release <- netflix_release %>% group_by(decada, type) %>% summarise(conteudo=n())
netflix_two_types <- netflix_release %>% group_by(decada) %>% summarise(q_types=n()) %>% filter(q_types == 2)
netflix_release <- netflix_release[netflix_release$decada %in% netflix_two_types$decada,]
netflix_release <- netflix_release %>% spread(key="type", value="conteudo")
colnames(netflix_release) <- c("decada", "Movie", "TV")
fig <- plot_ly(netflix_release, x=~decada)
fig <- fig %>% add_trace(y=~TV, name="TV Series", mode='line', type='scatter')
fig <- fig %>% add_trace(y=~Movie, name="Movies", mode='line', type='scatter')
fig <- fig %>% layout(xaxis = list(title = "Década"),
         yaxis = list (title = "Qnd. Conteúdo"))
fig

Questão 10

netflix_genero <- netflix %>% filter(release_year > 2000 & release_year < 2010) %>% select(release_year, listed_in)
netflix_genero$listed_in <- unlist(lapply(netflix_genero$listed_in, function(my_str) { 
  
  genero <- unlist(strsplit(my_str, split=", "))[1]
  
  if (genero %in% c("Dramas", "Action & Adventure", "Comedies")) {
      return(genero)
  }
   
  return(NA)

}))

netflix_genero <- netflix_genero %>% filter(!is.na(listed_in)) %>% group_by(release_year, listed_in) %>% summarise(lancamentos=n()) 
netflix_genero <- netflix_genero %>% spread(key="listed_in", value="lancamentos")
colnames(netflix_genero) <- c("release_year", "Action", "Comedies", "Dramas")
fig <- plot_ly(netflix_genero, x=~release_year, y=~Dramas, name="Drama", type='bar')
fig <- fig %>% add_trace(y=~Action, name="Ação e Aventura", barmode='group')
fig <- fig %>% add_trace(y=~Comedies, name="Comédia", barmode='group')
fig <- fig %>% layout(xaxis = list(title = "Ano de Lançamento"),
         yaxis = list (title = "Qtd. de Lançamentos"))
fig