【问题标题】:How do you custom format opencpu output你如何自定义格式opencpu输出
【发布时间】:2014-09-10 11:11:56
【问题描述】:

我有一个这样的 csv 文件:

DateTime        Server1 Server2 Server3
8/24/2014 15:20 6.09    5.7     5.21
8/24/2014 15:55 4.54    4.38    5.33
8/24/2014 16:04 5.03    4.52    4.92
8/24/2014 16:18 4.93    4.61    5.56
8/24/2014 16:27 6.27    4.18    5.62
8/24/2014 16:42 4.59    4.61    6.73
8/24/2014 16:56 5.91    4.37    4.76
8/24/2014 17:10 4.53    4.3     4.59

我使用 ocpu platfrom 上传它。读取csv文件的R函数是这样的:

readcsvnew <- function(file, ...){
  if(!grepl(".csv$", file)){
    stop("Uploaded file must be a .csv file!")
  }
  read.csv(file, header=TRUE, ...);
}

一旦我使用 ocpu 读取了这个文件,数据就在会话中。现在我需要打电话来更新我的 html 列表。为此,我需要调用会话对象并以 json 格式检索标头:

<legend>Plot Parameters</legend>
            <label>Y-Axis</label> 
            <select id="yaxis" multiple="multiple">

            </select> 
            <label>X-Axis</label> 
            <select name="xaxis" id="pollutant">

            </select>

一旦我在 Json 中获得了标题,我就可以用 javascript 填充它。现在选择列表已更新,基于用户选择的 x 轴值(这将是 DateTime)和 Y 轴值(这可能是 Server1 或 Server1 到 Server3),我需要再次调用 session 并检索值自定义Json格式如下:

{"name":"Server1","data":[[1408893651000,6.09],[1408895711000,4.54]},{"name":"Server2","data":[[1408893651000,5.7],[1408895711000,4.38]},{"name":"Server3","data":[[1408893651000,5.21],[1408895711000,5.33]}

【问题讨论】:

    标签: opencpu


    【解决方案1】:

    如果您检索对象的输出,HTTP GET 参数将映射到 jsonlite::toJSON()。例如:

    请参阅this email,了解使用自定义 JSON 从 RPC 请求检索输出的两步过程的工作示例。

    或者,您可以使用as.list 让您的函数返回一个列表而不是数据框。

    【讨论】:

    • 我得到了你提供的那些链接。你有返回函数 as.list 的工作示例吗?
    • 我需要一点帮助才能开始工作。我创建了另一个 R 函数,它将位于服务器上并接受 df 和列名作为参数并将值作为自定义 json 返回,就完成了。现在,我需要弄清楚如何将会话中的数据框传递给该函数。如何将现有会话中的数据以数据框格式传递给服务器上的 R 函数?有什么想法吗?
    • 这在许多地方和示例中都有记录。例如:demo.ocpu.io/appdemo/www/chain.htmlopencpu.org/posts/opencpu-release-1-4-4
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-05
    • 2014-05-14
    相关资源
    最近更新 更多