ZingChart 라이브러리를 사용하여 API 호출의 결과를 그래프로 나타냅니다. 차트 데이터 객체의 "값"필드에 대한 일반 배열을 전달하면 모든 것이 잘 동작합니다. I는 (titleSet
가 정규 자바 스크립트 객체이다) Object.keys(titleSet)
만든 배열 전달할 때, 그래프 표시는 다음과 같이 볼 수 있듯이ZingChart 문자열 대신 숫자로 표시되는 X 축 레이블
은 X 축이 이제 숫자 표지 문자열 배열 대신 하지만 정상적인 배열로 전달하는 대 Object.keys(titleSet)
결과를 인쇄 할 때, 그들은 모두 콘솔에서 동일한 것으로 나타납니다. 아무도 내가 뭘 잘못하고 있는지 알아낼 수 있습니까?
//List of movies inputted by the user
var movieList = [];
var movieSet = {};
var IMDBData = {
"values": [],
"text": "IMDB",
};
var metascoreData = {
"values": [],
"text": "Metascore"
};
var RTMData = {
"values": [],
"text": "Rotten Tomatoes Meter"
};
var RTUData = {
"values": [],
"text": "Rotten Tomatoes User"
};
var chartData = {
"type":"bar",
"legend":{
"adjust-layout": true
},
"plotarea": {
"adjust-layout":true
},
"plot":{
"stacked": true,
"border-radius": "1px",
"tooltip": {
"text": "Rated %v by %plot-text"
},
"animation":{
"effect":"11",
"method":"3",
"sequence":"ANIMATION_BY_PLOT_AND_NODE",
"speed":10
}
},
"scale-x": {
"label":{ /* Scale Title */
"text":"Movie Title",
},
"values": Object.keys(movieSet) /* Needs to be list of movie titles */
},
"scale-y": {
"label":{ /* Scale Title */
"text":"Total Score",
}
},
"series":[metascoreData, IMDBData, RTUData, RTMData]
};
var callback = function(data)
{
var resp = JSON.parse(data);
movieSet[resp.Title] = true;
//Render
zingchart.render({
id:'chartDiv',
data:chartData,
});
};
일반적으로 그래프 구성을 게시하기 전후에 매우 유용합니다. 좀 더 굳은 답변을 얻으려면 코드를 게시하십시오. – nardecky
내 답변을 편집하여 내 구성을 포함 시켰습니다. – pomtree