Я хочу создать временную шкалу, например , эту , используя пакет R
timevis
.Я знаю, как создать группу, как это делается в демоверсии:
library(timevis)
dataGroups <- data.frame(
id = 1:11,
content = c(
"Open",
"Open",
"Open",
"Open",
"Half price entry",
"Staff meeting",
"Open",
"Adults only",
"Open",
"Hot tub closes",
"Siesta"
),
start = c(
"2016-05-01 07:30:00",
"2016-05-01 14:00:00",
"2016-05-01 06:00:00",
"2016-05-01 14:00:00",
"2016-05-01 08:00:00",
"2016-05-01 08:00:00",
"2016-05-01 08:30:00",
"2016-05-01 14:00:00",
"2016-05-01 16:00:00",
"2016-05-01 19:30:00",
"2016-05-01 12:00:00"
),
end = c(
"2016-05-01 12:00:00",
"2016-05-01 20:00:00",
"2016-05-01 12:00:00",
"2016-05-01 22:00:00",
"2016-05-01 10:00:00",
"2016-05-01 08:30:00",
"2016-05-01 12:00:00",
"2016-05-01 16:00:00",
"2016-05-01 20:00:00",
NA,
"2016-05-01 14:00:00"
),
group = c(rep("lib", 2), rep("gym", 3), rep("pool", 5), NA),
subgroup = c("A", "A", "B", "C", "C", "D", "D", "E", "E", "E", NA),
type = c(rep("range", 9), "point", "background")
)
groups <- data.frame(id = c("lib", "gym", "pool"),
content = c("Library", "Gym", "Pool"))
timevis(
data = dataGroups,
groups = groups,
options = list(editable = TRUE, stack = FALSE)
)
Я не знаю, как включить подгруппы в окончательную шкалу времени.Я полагаю, что это может быть возможно с использованием setGroups
или включением некоторых параметров с использованием htmlwidgets::JS()
.Я пробовал примеры в документах, используя второй вариант, и он, похоже, не работает:
timevis(
data.frame(
id = 1,
content = "double click anywhere<br>in the timeline<br>to add an item",
start = "2016-01-01"
),
options = list(
editable = TRUE,
onAdd = htmlwidgets::JS(
'function(item, callback) {
item.content = "Hello!<br/>" + item.content;
timevis 19
callback(item);
}'
)
)
)
Любой пример временной шкалы, включая подгруппы, будет оценен.
В случае, если этофункция не может быть использована в R
есть ли альтернатива?