[Yuima-commits] r424 - in pkg/yuimaGUI: . inst/yuimaGUI inst/yuimaGUI/www
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Sun Mar 27 00:05:58 CET 2016
Author: phoenix844
Date: 2016-03-27 00:05:54 +0100 (Sun, 27 Mar 2016)
New Revision: 424
Modified:
pkg/yuimaGUI/DESCRIPTION
pkg/yuimaGUI/inst/yuimaGUI/global.R
pkg/yuimaGUI/inst/yuimaGUI/server.R
pkg/yuimaGUI/inst/yuimaGUI/ui.R
pkg/yuimaGUI/inst/yuimaGUI/www/custom.css
Log:
Added module for change point estimation
Modified: pkg/yuimaGUI/DESCRIPTION
===================================================================
--- pkg/yuimaGUI/DESCRIPTION 2016-03-25 00:28:32 UTC (rev 423)
+++ pkg/yuimaGUI/DESCRIPTION 2016-03-26 23:05:54 UTC (rev 424)
@@ -1,7 +1,7 @@
Package: yuimaGUI
Type: Package
Title: A Graphical User Interface for the Yuima Package
-Version: 0.5.0
+Version: 0.6.0
Author: YUIMA Project Team
Maintainer: Emanuele Guidotti <emanuele.guidotti at studenti.unimi.it>
Description: Provides a graphical user interface for the yuima package.
Modified: pkg/yuimaGUI/inst/yuimaGUI/global.R
===================================================================
--- pkg/yuimaGUI/inst/yuimaGUI/global.R 2016-03-25 00:28:32 UTC (rev 423)
+++ pkg/yuimaGUI/inst/yuimaGUI/global.R 2016-03-26 23:05:54 UTC (rev 424)
@@ -4,17 +4,15 @@
require(quantmod)
require(shinydashboard)
require(shinyBS)
-require(shinyRGL)
-require(rgl)
require(yuima)
require(shinyjs)
if(!exists("yuimaGUItable"))
- yuimaGUItable <<- reactiveValues(series=data.frame(), model=data.frame(), simulation=data.frame())
+ yuimaGUItable <<- reactiveValues(series=data.frame(), model=data.frame(), simulation=data.frame())
if(!exists("yuimaGUIdata"))
- yuimaGUIdata <<- reactiveValues(series=list(), model=list(), simulation=list())
+ yuimaGUIdata <<- reactiveValues(series=list(), cp=list(), model=list(), simulation=list())
if(!exists("estimateSettings"))
estimateSettings <<- list()
@@ -559,24 +557,25 @@
}
withProgress(message = 'Clustering: ', value = 0, {
k <- 1
- for(i in 1:l)
+ for(i in 1:l){
+ delta_i <- as.numeric(abs(mean(diff(index(object)[!is.na(object[,i])]))))
+ data_i <- Delt(na.omit(object[,i]))
+ data_i <- data_i[data_i!="Inf"]
+ dens1 <- density(data_i/sqrt(delta_i)+mean(data_i, na.rm = TRUE)*(1/delta_i-1/sqrt(delta_i)), na.rm = TRUE)
for(j in i:l)
if (i!=j){
incProgress(2/(l*(l-1)), detail = paste(k,"(/", l*(l-1)/2 ,")"))
- delta_i <- as.numeric(abs(mean(diff(index(object)[!is.na(object[,i])]))))
delta_j <- as.numeric(abs(mean(diff(index(object)[!is.na(object[,j])]))))
- data_i <- Delt(na.omit(object[,i]))
- data_i <- data_i[data_i!="Inf"]
data_j <- Delt(na.omit(object[,j]))
data_j <- data_j[data_j!="Inf"]
- dens1 <- density(data_i/sqrt(delta_i)+mean(data_i, na.rm = TRUE)*(1-1/sqrt(delta_i)), na.rm = TRUE)
- dens2 <- density(data_j/sqrt(delta_j)+mean(data_j, na.rm = TRUE)*(1-1/sqrt(delta_j)), na.rm = TRUE)
+ dens2 <- density(data_j/sqrt(delta_j)+mean(data_j, na.rm = TRUE)*(1/delta_j-1/sqrt(delta_j)), na.rm = TRUE)
f_dist <- function(x) {abs(f(x,dens1)-f(x,dens2))}
npoints <- 1000
dist <- (max(tail(dens1$x,1), tail(dens2$x,1))-min(dens1$x[1],dens2$x[1]))/npoints*0.5*sum(f_dist(seq(from=min(dens1$x[1], dens2$x[1]), to=max(tail(dens1$x,1), tail(dens2$x,1)), length.out = npoints)))
d[j,i] <- ifelse(dist > 1, 1, dist)
k <- k + 1
}
+ }
})
rownames(d) <- colnames(object)
colnames(d) <- colnames(object)
@@ -585,3 +584,47 @@
+CPanalysis <- function(x, method = c("lSQ", "KS"), pvalue = 0.01){
+ if (pvalue > 0.1){
+ pvalue <- 0.1
+ warning("pvalue re-defined: 0.1")
+ }
+ if(method=="lSQ"){
+ tau <- cpoint(x)$tau0
+ return(list(tau=tau, pvalue=NA))
+ }
+ if(method=="KS"){
+ x_incr <- na.omit(Delt(x))
+ x_incr_num <- as.numeric(x_incr)
+ tau <- c()
+ p.value<-c()
+ nTot <-length(x_incr_num)
+ n0 <- 1
+ repeat{
+ ks<-c()
+ for (i in seq(from = n0, to=(nTot-1), by = as.integer(1+(nTot-n0)/1000))){
+ ks[i]<- suppressWarnings(ks.test(x_incr_num[n0:i],x_incr_num[(i+1):nTot])$p.value)
+ }
+ ifelse(
+ min(ks, na.rm=TRUE) > pvalue,
+ {
+ break
+ },
+ {
+ n0 <- which.min(ks)
+ tau <- c(index(x_incr)[n0], tau)
+ p.value <- c(ks[n0], p.value)
+ }
+ )
+ }
+ if (length(tau)==0){
+ tau <- NA
+ p.value <- NA
+ }
+ return (list(tau=tau,pvalue=p.value))
+ }
+}
+
+
+
+
Modified: pkg/yuimaGUI/inst/yuimaGUI/server.R
===================================================================
--- pkg/yuimaGUI/inst/yuimaGUI/server.R 2016-03-25 00:28:32 UTC (rev 423)
+++ pkg/yuimaGUI/inst/yuimaGUI/server.R 2016-03-26 23:05:54 UTC (rev 424)
@@ -1539,7 +1539,9 @@
observeEvent(input$cluster_button_startCluster, {
closeAlert(session, "cluster_alert_dist")
- if (length(rownames(seriesToCluster$table))!=0){
+ if (length(rownames(seriesToCluster$table))<=2)
+ createAlert(session, anchorId = "cluster_alert", alertId = "cluster_alert_dist", content = "Select at least 3 series", style = "error")
+ if (length(rownames(seriesToCluster$table))>2){
names_list <- rownames(seriesToCluster$table)
x <- yuimaGUIdata$series[[names_list[1]]]
for(i in names_list[-1])
@@ -1550,11 +1552,12 @@
"MOdist" = try(MOdist(na.omit(x))),
"MYdist" = try(MYdist(x))
)
+ shinyjs::toggle("cluster_charts", condition = (class(d)!="try-error"))
if (class(d)=="try-error")
createAlert(session, anchorId = "cluster_alert", alertId = "cluster_alert_dist", content = "Error in clustering", style = "error")
else{
hc <- hclust(d)
- labelColors <- c("#CDB380", "#036564", "#EB6841", "#EDC951")
+ labelColors <- c("#CDB380", "#FF0000", "#036564", "#FF00FF", "#EB6841", "#7FFFD4", "#EDC951","#FF8000", "#FFE4E1", "#A2CD5A", "#71C671", "#AAAAAA", "#555555", "#FFA07A", "#8B6508", "#FFC125", "#FFFACD", "#808000", "#458B00", "#54FF9F", "#43CD80", "#008B8B", "#53868B", "#B0E2FF", "#0000FF", "#F8F8FF", "#551A8B", "#AB82FF", "#BF3EFF", "#FF83FA", "#8B1C62", "#CD6839", "#8E8E38", "#1E1E1E")
dendrClick <- reactiveValues(y = NULL)
output$cluster_dendogram <- renderPlot({
if(!is.null(input$cluster_dendrogram_click$y))
@@ -1579,8 +1582,17 @@
}
hc <- dendrapply(as.dendrogram(hc), colDefault)
}
- par(bg="#471a1a", xaxt = "n", mar= c(10, 4, 4, 2)+0.1)
- plot(hc, ylab = "", xlab = "", main = "Dendrogram", edgePar=list(col="grey50"), col.main = "#FFF68F")
+ output$cluster_button_saveDendogram <- downloadHandler(
+ filename = "Dendrogram.png",
+ content = function(file) {
+ png(file, width = 960)
+ par(bg="black", xaxt = "n", mar= c(10, 4, 4, 2)+0.1)
+ plot(hc, ylab = "", xlab = "", main = "Dendrogram", edgePar=list(col="grey50"), col.main = "#FFF68F", col.axis="grey")
+ dev.off()
+ }
+ )
+ par(bg="black", xaxt = "n", mar= c(10, 4, 4, 2)+0.1)
+ plot(hc, ylab = "", xlab = "", main = "Dendrogram", edgePar=list(col="grey50"), col.main = "#FFF68F", col.axis="grey")
})
output$cluster_scaling2D <- renderPlot({
points <- cmdscale(d)
@@ -1588,7 +1600,16 @@
g1 <- cutree(hclust(d), h = dendrClick$y)
else
g1 <- 1
- par(bg="#471a1a", xaxt = "n", yaxt = "n", bty="n")
+ output$cluster_button_saveScaling2D <- downloadHandler(
+ filename = "Multidimensional scaling.png",
+ content = function(file) {
+ png(file)
+ par(bg="black", xaxt = "n", yaxt = "n", bty="n")
+ plot(points, col=labelColors[g1], pch=16, cex=2, main = "Multidimensional scaling", col.main = "#FFF68F", xlab="", ylab="")
+ dev.off()
+ }
+ )
+ par(bg="black", xaxt = "n", yaxt = "n", bty="n")
plot(points, col=labelColors[g1], pch=16, cex=2, main = "Multidimensional scaling", col.main = "#FFF68F", xlab="", ylab="")
})
}
@@ -1597,8 +1618,106 @@
+ ########################Clustering
+ ########################
+ ########################
+ ###Display available data
+ output$changepoint_table_select <- DT::renderDataTable(options=list(scrollY = 150, scrollCollapse = FALSE, deferRender = TRUE, dom = 'frtS'), extensions = 'Scroller', selection = "multiple", rownames = FALSE,{
+ if (length(yuimaGUItable$series)==0){
+ NoData <- data.frame("Symb"=NA,"From"=NA, "To"=NA)
+ return(NoData[-1,])
+ }
+ return (yuimaGUItable$series)
+ })
+
+ ###Table of selected data to change point
+ seriesToChangePoint <- reactiveValues(table=data.frame())
+
+ ###Select Button
+ observeEvent(input$changepoint_button_select, priority = 1, {
+ seriesToChangePoint$table <<- rbind(seriesToChangePoint$table, yuimaGUItable$series[(rownames(yuimaGUItable$series) %in% input$changepoint_table_select_rows_selected) & !(rownames(yuimaGUItable$series) %in% rownames(seriesToChangePoint$table)),])
+ })
+
+ ###SelectAll Button
+ observeEvent(input$changepoint_button_selectAll, priority = 1, {
+ seriesToChangePoint$table <<- rbind(seriesToChangePoint$table, yuimaGUItable$series[(rownames(yuimaGUItable$series) %in% input$changepoint_table_select_rows_all) & !(rownames(yuimaGUItable$series) %in% rownames(seriesToChangePoint$table)),])
+ })
+
+ ###Display Selected Data
+ output$changepoint_table_selected <- DT::renderDataTable(options=list(order = list(1, 'desc'), scrollY = 150, scrollCollapse = FALSE, deferRender = TRUE, dom = 'frtS'), extensions = 'Scroller', rownames = FALSE, selection = "multiple",{
+ if (length(seriesToChangePoint$table)==0){
+ NoData <- data.frame("Symb"=NA,"From"=NA, "To"=NA)
+ return(NoData[-1,])
+ }
+ return (seriesToChangePoint$table)
+ })
+
+ ###Control selected data to be in yuimaGUIdata$series
+ observe({
+ if(length(seriesToChangePoint$table)!=0){
+ if (length(yuimaGUItable$series)==0)
+ seriesToChangePoint$table <<- data.frame()
+ else
+ seriesToChangePoint$table <<- seriesToChangePoint$table[which(as.character(seriesToChangePoint$table[,"Symb"]) %in% as.character(yuimaGUItable$series[,"Symb"])),]
+ }
+ })
+
+ ###Delete Button
+ observeEvent(input$changepoint_button_delete, priority = 1,{
+ if (!is.null(input$changepoint_table_selected_rows_selected))
+ seriesToChangePoint$table <<- seriesToChangePoint$table[-which(rownames(seriesToChangePoint$table) %in% input$changepoint_table_selected_rows_selected),]
+ })
+
+ ###DeleteAll Button
+ observeEvent(input$changepoint_button_deleteAll, priority = 1,{
+ seriesToChangePoint$table <<- seriesToChangePoint$table[-which(rownames(seriesToChangePoint$table) %in% input$changepoint_table_selected_rows_all),]
+ })
+
+ observe({
+ shinyjs::toggle("changepoint_pvalue", condition = (input$changepoint_method=="KS"))
+ shinyjs::toggle("changepoint_charts", condition = (length(names(yuimaGUIdata$cp))!=0))
+ })
+
+ output$changepoint_symb <- renderUI({
+ selectInput("changepoint_symb", "Symbol", choices = sort(names(yuimaGUIdata$cp)))
+ })
+
+ observeEvent(input$changepoint_button_startEstimation, {
+ if (length(rownames(seriesToChangePoint$table))!=0)
+ withProgress(message = 'Analyzing: ', value = 0, {
+ for (i in rownames(seriesToChangePoint$table)){
+ incProgress(1/length(rownames(seriesToChangePoint$table)), detail = i)
+ yuimaGUIdata$cp[[i]] <<- CPanalysis(x=getData(i), method = input$changepoint_method, pvalue = input$changepoint_pvalue/100)
+ }
+ })
+ })
+
+ output$changepoint_plot_series <- renderPlot({
+ if(!is.null(input$changepoint_symb))
+ if ((input$changepoint_symb %in% rownames(yuimaGUItable$series))){
+ par(bg="black")
+ plot(getData(input$changepoint_symb), main=input$changepoint_symb, xlab="Index", ylab=NA, log=switch(input$changepoint_scale,"Linear"="","Logarithmic (Y)"="y", "Logarithmic (X)"="x", "Logarithmic (XY)"="xy"), col="green", col.axis="grey", col.lab="grey", col.main="grey", fg="black")
+ abline(v=yuimaGUIdata$cp[[input$changepoint_symb]]$tau, col = "yellow")
+ grid(col="grey")
+ }
+ })
+
+ output$changepoint_plot_incr <- renderPlot({
+ if(!is.null(input$changepoint_symb))
+ if ((input$changepoint_symb %in% rownames(yuimaGUItable$series))){
+ x <- Delt(getData(input$changepoint_symb))
+ x <- x[x!="Inf"]
+ par(bg="black")
+ plot(x, main=paste(input$changepoint_symb, " - Percentage Increments"), xlab="Index", ylab=NA, log=switch(input$changepoint_scale,"Linear"="","Logarithmic (Y)"="", "Logarithmic (X)"="x", "Logarithmic (XY)"="x"), col="green", col.axis="grey", col.lab="grey", col.main="grey", fg="black")
+ abline(v=yuimaGUIdata$cp[[input$changepoint_symb]]$tau, col = "yellow")
+ grid(col="grey")
+ }
+ })
+
+
+
}
Modified: pkg/yuimaGUI/inst/yuimaGUI/ui.R
===================================================================
--- pkg/yuimaGUI/inst/yuimaGUI/ui.R 2016-03-25 00:28:32 UTC (rev 423)
+++ pkg/yuimaGUI/inst/yuimaGUI/ui.R 2016-03-26 23:05:54 UTC (rev 424)
@@ -10,6 +10,7 @@
menuSubItem("Your Data", tabName = "yourData")
),
menuItem("Explorative Data Analysis", tabName = "eda", icon = icon("map"),
+ menuSubItem("Change Point Estimation", tabName = "changepoint"),
menuSubItem("Clustering", tabName = "cluster")
),
menuItem("Modelling & Model Selection", tabName = "models", icon = icon("sliders")),
@@ -481,37 +482,81 @@
fluidRow(column(12,
column(4,
h4("Available data", style="color:#CDCECD"),
- DT::dataTableOutput("cluster_table_select"),
- br(),
- fluidRow(
- column(6,actionButton("cluster_button_select",label = "Select", align = "center")),
- bsTooltip("cluster_button_select", title = "Select data to cluster", placement = "top"),
- column(6,actionButton("cluster_button_selectAll",label = "Select All", align = "center")),
- bsTooltip("cluster_button_selectAll", title = "Select all data that are displayed", placement = "top")
- )
+ DT::dataTableOutput("cluster_table_select")
),
column(4,
h4("Selected data", style="color:#CDCECD"),
- DT::dataTableOutput("cluster_table_selected"),
- br(),
- fluidRow(
- column(6,actionButton("cluster_button_delete",label = "Delete", align = "center")),
- bsTooltip("cluster_button_delete", title = "Delete selected data", placement = "top"),
- column(6,actionButton("cluster_button_deleteAll",label = "Delete All", align = "center")),
- bsTooltip("cluster_button_deleteAll", title = "Delete all data that are displayed", placement = "top")
- )
+ DT::dataTableOutput("cluster_table_selected")
),
column(4,br(),br(),br(),br(),
- div(align="center",selectInput("cluster_distance", "Distance", choices = c("Markov Operator"="MOdist", "My distance"="MYdist"))),
- br(),br(),br(),br(),br(),br(),
- actionButton("cluster_button_startCluster", label = "Start Clustering", align = "center")
+ div(align="center",selectInput("cluster_distance", "Distance", choices = c("Markov Operator"="MOdist", "My distance"="MYdist")))
)
)),
br(),
- fluidRow(
- column(8, plotOutput("cluster_dendogram", click = "cluster_dendrogram_click")),
- column(4, plotOutput("cluster_scaling2D"))
- )
+ fluidRow(column(12,
+ column(2,actionButton("cluster_button_select",label = "Select", align = "center")),
+ bsTooltip("cluster_button_select", title = "Select data to cluster", placement = "top"),
+ column(2,actionButton("cluster_button_selectAll",label = "Select All", align = "center")),
+ bsTooltip("cluster_button_selectAll", title = "Select all data that are displayed", placement = "top"),
+ column(2,actionButton("cluster_button_delete",label = "Delete", align = "center")),
+ bsTooltip("cluster_button_delete", title = "Delete selected data", placement = "top"),
+ column(2,actionButton("cluster_button_deleteAll",label = "Delete All", align = "center")),
+ bsTooltip("cluster_button_deleteAll", title = "Delete all data that are displayed", placement = "top"),
+ column(4,actionButton("cluster_button_startCluster", label = "Start Clustering", align = "center"))
+ )),
+ shinyjs::hidden(div(id="cluster_charts",
+ br(),br(),
+ hr(class = "hrHeader"),
+ br(),
+ fluidRow(column(12,
+ column(8, plotOutput("cluster_dendogram", click = "cluster_dendrogram_click")),
+ column(4, plotOutput("cluster_scaling2D"))
+ )),
+ br(),
+ fluidRow(column(12,
+ column(2),
+ column(4, div(align="center", downloadButton("cluster_button_saveDendogram", label = "Save dendrogram"))),
+ column(3),
+ column(2, div(align="center", downloadButton("cluster_button_saveScaling2D", label = "Save chart")))
+ ))
+ ))
+ ),
+ tabItem(tabName = "changepoint",
+ fluidRow(column(12,bsAlert("changepoint_alert"))),
+ fluidRow(column(12,
+ column(4,
+ h4("Available data", style="color:#CDCECD"),
+ DT::dataTableOutput("changepoint_table_select")
+ ),
+ column(4,
+ h4("Selected data", style="color:#CDCECD"),
+ DT::dataTableOutput("changepoint_table_selected")
+ ),
+ column(4,br(),br(),br(),br(),
+ div(align="center", selectInput("changepoint_method", "Method", choices = c("Least Squares"="lSQ", "Kolmogorov-Smirnov"="KS"))),
+ shinyjs::hidden(div(align="center", sliderInput("changepoint_pvalue", label = "p-value (%)", value=1, min=0, max=10, step = 0.1)))
+ )
+ )),
+ br(),
+ fluidRow(column(12,
+ column(2,actionButton("changepoint_button_select",label = "Select", align = "center")),
+ bsTooltip("changepoint_button_select", title = "Select data", placement = "top"),
+ column(2,actionButton("changepoint_button_selectAll",label = "Select All", align = "center")),
+ bsTooltip("changepoint_button_selectAll", title = "Select all data that are displayed", placement = "top"),
+ column(2,actionButton("changepoint_button_delete",label = "Delete", align = "center")),
+ bsTooltip("changepoint_button_delete", title = "Delete selected data", placement = "top"),
+ column(2,actionButton("changepoint_button_deleteAll",label = "Delete All", align = "center")),
+ bsTooltip("changepoint_button_deleteAll", title = "Delete all data that are displayed", placement = "top"),
+ column(4,actionButton("changepoint_button_startEstimation", label = "Start Analysis", align = "center"))
+ )),
+ br(),br(),
+ fluidRow(column(12,div(id="changepoint_charts",
+ hr(class = "hrHeader"),
+ uiOutput("changepoint_symb", align="center"),
+ selectInput("changepoint_scale", label = "Scale", choices=c("Linear","Logarithmic (Y)","Logarithmic (X)", "Logarithmic (XY)"), width = "150px"),
+ column(6,plotOutput("changepoint_plot_series")),
+ column(6,plotOutput("changepoint_plot_incr"))
+ )))
)
########################new tab items below
)
Modified: pkg/yuimaGUI/inst/yuimaGUI/www/custom.css
===================================================================
--- pkg/yuimaGUI/inst/yuimaGUI/www/custom.css 2016-03-25 00:28:32 UTC (rev 423)
+++ pkg/yuimaGUI/inst/yuimaGUI/www/custom.css 2016-03-26 23:05:54 UTC (rev 424)
@@ -1,11 +1,11 @@
.skin-blue .main-header .logo {
- background-color: #0F0F0E;
+ background-color: black;
}
.skin-blue .main-header .navbar {
- background-color: #0F0F0E;
+ background-color: black;
}
.skin-blue .main-sidebar {
- background-color: #0F0F0E;
+ background-color: black;
font-family: "Times New Roman", Times, serif;
}
.content-wrapper, .right-side {
@@ -33,7 +33,7 @@
background: linear-gradient(#606D60, #202220, #606D60);
}
-#advancedSettingsButtonApplyDelta, #advancedSettingsButtonApplyAllDelta, #advancedSettingsButtonApplyModel, #advancedSettingsButtonApplyAllModel, #advancedSettingsButtonApplyGeneral, #advancedSettingsButtonApplyAllModelGeneral, #advancedSettingsButtonApplyAllGeneral, #buttonApplyRange, #buttonApplyAllRange, #simulate_button_apply_nsim, #simulate_button_applyAll_nsim, #simulate_button_apply_xinit, #simulate_button_applyAll_xinit, #simulate_button_apply_range, #simulate_button_applyAll_range, #simulate_button_apply_advancedSettings, #simulate_button_applyAll_advancedSettings, #simulate_showSimulation_button_saveTrajectory, #simulate_showSimulation_button_saveHist{
+#advancedSettingsButtonApplyDelta, #advancedSettingsButtonApplyAllDelta, #advancedSettingsButtonApplyModel, #advancedSettingsButtonApplyAllModel, #advancedSettingsButtonApplyGeneral, #advancedSettingsButtonApplyAllModelGeneral, #advancedSettingsButtonApplyAllGeneral, #buttonApplyRange, #buttonApplyAllRange, #simulate_button_apply_nsim, #simulate_button_applyAll_nsim, #simulate_button_apply_xinit, #simulate_button_applyAll_xinit, #simulate_button_apply_range, #simulate_button_applyAll_range, #simulate_button_apply_advancedSettings, #simulate_button_applyAll_advancedSettings, #simulate_showSimulation_button_saveTrajectory, #simulate_showSimulation_button_saveHist, #cluster_button_saveDendogram, #cluster_button_saveScaling2D{
width: 100%;
color: #ffffff;
text-shadow: 1px 1px 1px #000;
@@ -53,7 +53,7 @@
background: linear-gradient(#606D60, #202220, #606D60);
}
-#finDataDelete, #finDataDeleteAll, #finDataSave, #yourFileDelete, #yourFileDeleteAll, #yourFileSave, #buttonSelect_models_Univariate, #buttonSelectAll_models_Univariate, #buttonDelete_models_Univariate, #buttonDeleteAll_models_Univariate, #databaseModelsDelete, #databaseModelsDeleteAll, #simulation_button_deleteModels, #simulation_button_deleteAllModels, #simulate_button_selectModels, #simulate_button_selectAllModels, #simulate_monitor_button_delete, #simulate_monitor_button_deleteAll, #simulate_monitor_button_showSimulation, #simulate_model_usr_button_select, #simulate_model_usr_button_selectAll, #simulate_model_usr_button_delete, #simulate_model_usr_button_deleteAll, #cluster_button_select, #cluster_button_selectAll, #cluster_button_delete, #cluster_button_deleteAll{
+#finDataDelete, #finDataDeleteAll, #finDataSave, #yourFileDelete, #yourFileDeleteAll, #yourFileSave, #buttonSelect_models_Univariate, #buttonSelectAll_models_Univariate, #buttonDelete_models_Univariate, #buttonDeleteAll_models_Univariate, #databaseModelsDelete, #databaseModelsDeleteAll, #simulation_button_deleteModels, #simulation_button_deleteAllModels, #simulate_button_selectModels, #simulate_button_selectAllModels, #simulate_monitor_button_delete, #simulate_monitor_button_deleteAll, #simulate_monitor_button_showSimulation, #simulate_model_usr_button_select, #simulate_model_usr_button_selectAll, #simulate_model_usr_button_delete, #simulate_model_usr_button_deleteAll, #cluster_button_select, #cluster_button_selectAll, #cluster_button_delete, #cluster_button_deleteAll, #changepoint_button_select, #changepoint_button_selectAll, #changepoint_button_delete, #changepoint_button_deleteAll{
font-size: 110%;
width: 100%;
color: black;
@@ -71,7 +71,7 @@
background: linear-gradient(#202220, #159609, #202220);
}
-#advancedSettingsButton, #simulate_button_advancedSettings, #usr_model_button_delete {
+#advancedSettingsButton, #simulate_button_advancedSettings {
width: 40%;
height: 39px;
color: #ffffff;
@@ -79,14 +79,21 @@
background: linear-gradient(#202220, #963131, #202220);
}
-#simulate_model_usr_button_save,#usr_model_button_save {
+#simulate_model_usr_button_save, #usr_model_button_save {
+ width: 40%;
+ height: 39px;
+ color: #ffffff;
+ background: radial-gradient(#061218, #184860, #061218);
+}
+
+#usr_model_button_delete {
width: 30%;
height: 39px;
color: #ffffff;
- background: radial-gradient(#a5bdc9, #184860, #061218);
+ background: radial-gradient(#202220, #963131, #202220);
}
-#EstimateModels, #simulate_simulateModels, #cluster_button_startCluster {
+#EstimateModels, #simulate_simulateModels, #cluster_button_startCluster, #changepoint_button_startEstimation {
width: 100%;
color: #ffffff;
text-shadow: 1px 1px 1px #000;
More information about the Yuima-commits
mailing list