我正在尝试基于this Isolines Shiny app创建一些东西。
这使用the Here API。可以在Mode
中使用公共交通工具和骑自行车,但是当我这样做时,出现了一个错误:
等值API失败,出现以下错误:InvalidInputData
从the documentation的角度来看,公共交通和骑自行车只能用于路线选择,而不能用于等值线。
这是相关的Shiny代码(受上述应用的影响很大):
is_valid = validate_inputs(session, input$origin, input$departure, input$min, input$max, input$step)
if(is_valid) {
progress$status$set(message = 'Requesting...')
departure = paste0(input$departure, ' ',input$time, ':00:00')
range_type = switch(input$range_type, 'Time (minutes)' = 'time', 'Distance (metres)' = 'distance')
unit = switch(input$range_type, 'Time (minutes)' = ' minutes', 'Distance (metres)' = ' metres')
mode = switch(input$mode, 'Pedestrian' = 'pedestrian', 'Public Transport' = 'publicTransport', 'Bike' = 'bicycle', 'Car' = 'car')
isoline_sequence = if(input$range_type == 'Time (minutes)') {
seq(input$min, input$max, input$step) * 60 %>% sort()
} else {
round(seq(input$min, input$max, input$step), digits = 0) %>% sort()
}
layers = sapply(1:length(isoline_sequence), function(x) {
progress$status$inc(amount = 1/length(isoline_sequence),
message = paste0('Processing request ', x, ' of ', length(isoline_sequence)))
isoline(str_remove(input$origin, ' '), departure = departure, range_type = range_type,
range = isoline_sequence[x], mode = mode, app_id = keys$app_id, app_code = keys$app_code)
})
任何帮助都会很棒!
答案 0 :(得分:1)
到目前为止,calculate Isoline
API仅支持car
,truck
和pedestrian
传输模式。
请参阅文档:
https://developer.here.com/documentation/routing/topics/resource-calculate-isoline.html:
等值线请求中支持的类型:最快,最短。
等值线请求中支持的运输模式:汽车,卡车(仅适用于最快的类型),行人。