2013-06-07 2 views
0

R에서 highchart로 데이터를 차트 화하는 것을 좋아합니다. 내 데이터 프레임은 다음과 같습니다hightcharts가 이해하는 json 형식으로 데이터 프레임을 변환하는 방법

dput(head(df,10)) 
structure(list(DATE = structure(c(1362027751, 1362027781, 1362027811, 
1362027841, 1362027871, 1362027901, 1362027931, 1362027961, 1362027991, 
1362028021), class = c("POSIXct", "POSIXt")), CPU = c(66L, 72L, 
69L, 72L, 69L, 68L, 71L, 73L, 63L, 57L)), .Names = c("DATE", 
"CPU"), row.names = c(NA, 10L), class = "data.frame") 

다음과 같이 내가 JSON 형식이 DF 변환 오전 :

:

ll <- as.list(setNames(df$CPU,df$DATE)) 
library(RJSONIO) 
data<-toJSON(ll) 
cat(data, file="data.json") 

내가 TEH data.json 파일을보고,이 같이 보입니다

{ 
"2013-02-28 00:02:31": 66, 
"2013-02-28 00:03:01": 72, 
"2013-02-28 00:03:31": 69, 
"2013-02-28 00:04:01": 72, 
"2013-02-28 00:04:31": 69, 
"2013-02-28 00:05:01": 68, 
"2013-02-28 00:05:31": 71, 
"2013-02-28 00:06:01": 73, 
} 

나는이 같은 모습에 내 data.json 파일이 필요합니다 : [[날짜, 값], [날짜, 값], [날짜 값]

[ 

    ["2013-02-28 00:02:31": 66], 
    ["2013-02-28 00:03:01": 72], 
    ["2013-02-28 00:03:31": 69], 
    ["2013-02-28 00:04:01": 72] 
    ] 

R에서 어떻게합니까?

답변

1

나는 그 출력을 정확하게 생각하지 않습니다.

Highcharts JSON load issue

:

> ll <- list(as.character(df$DATE), df$CPU) 
> data2<-toJSON(ll) 
> cat(data2) # You will want to add a 'file=' argument 
[ 
[ "2013-02-27 21:02:31", "2013-02-27 21:03:01", "2013-02-27 21:03:31", "2013-02-27 21:04:01", "2013-02-27 21:04:31", "2013-02-27 21:05:01", "2013-02-27 21:05:31", "2013-02-27 21:06:01", "2013-02-27 21:06:31", "2013-02-27 21:07:01" ], 
[ 66, 72, 69, 72, 69, 68, 71, 73, 63, 57 ] 
] 

문제의 HighCharts 측에 대한 조언이 SO Q & (A)에서 살펴 보자 : 나는 당신이 별도의 날짜와 값이 /하지만 열을 조정하려는 생각

(R-POSIXct 개체의 기본 표현이 "double"이므로 문자로 변환해야하는 날짜 시간)

로 값을 구분하려면 242,753,210, 나는 당신이 시도 할 수도있을 것 같군요,하지만 난 만족하다는 것을 증명하지 않을 생각 :

> ll <- as.list(paste(df$DATE, df$CPU, sep=" : ")) 
> data2<-toJSON(ll) 
> cat(data2) 
[ 
"2013-02-27 21:02:31 : 66", 
"2013-02-27 21:03:01 : 72", 
"2013-02-27 21:03:31 : 69", 
"2013-02-27 21:04:01 : 72", 
"2013-02-27 21:04:31 : 69", 
"2013-02-27 21:05:01 : 68", 
"2013-02-27 21:05:31 : 71", 
"2013-02-27 21:06:01 : 73", 
"2013-02-27 21:06:31 : 63", 
"2013-02-27 21:07:01 : 57" 
] 
+0

내가 highcharts 놀아 봤는데 JSON 형식은 다음과 같이 할 필요가 생각합니다. 내가이 형식 작업을 얻을 수있었습니다 : [ [1369540800000,12, 은 [1379540800000,5, 은 [1389540800000,18, [1389540800000,13] ] – user1471980

+0

당신은, highcharts을 잘 알고있는 경우 이 json 데이터를 yaxis에서 날짜를 표시하고 xaxis에서 cpu로 표시하고 메모리와 같은 더 많은 데이터를 표시하려면 어떻게 나누겠습니까? 나는 거의 당황하지 않는다. – user1471980

+0

나는 HighCharts에 익숙하지 않다. SO 하이 차트 태그가 있습니다. –

관련 문제