1

基本的な高チャートで日付で区切られた文字列を表示するのに問題があります

Twitterからツイートを取得して配列に保存し、配列をコンマと引用符で区切られた文字列に変換しています。
残念ながら、グラフに表示することはできません。何が間違っているのかわかりません。

    function search(){
    var value = $('#box').val();
    var array=[];
    var dateArray = [];
    var dateString;
    if (value!==""){$.getJSON("",
      function(data){

   $.each(data.results, function(i, item){
      var user=item.from_user;
      var created_at=new Date(item.created_at);
      var month = created_at.getMonth();
      var day = created_at.getDate();
      var year = created_at.getFullYear();
      var created= day +'/'+ month+ '/'+ year;
      array.push({date:created,username:user});
     });
    //    console.log(array);
    for (var i in array) {
        dateArray.push(array[i].date);
            }  
    dateString="'" + dateArray.join("','") + "'";
    console.log(dateString);
    });
      }
    var chart;
    chart = new Highcharts.Chart({
    chart: {
        renderTo: 'container',
        type: 'line',
        marginRight: 130,
        marginBottom: 25
    },
    title: {
        text: 'Monthly Average Temperature',
        x: -20 //center
    },
    subtitle: {
        text: 'Source: WorldClimate.com',
        x: -20
    },
    xAxis: {
        categories: [dateString]
    },
4

2 に答える 2

2

JsFiddleを修正しました

x軸パラメータは次のようになります。

xAxis: {
        categories: dateString
    },

アルス、これを変更するだけです:-)

for (var i in array) {
    dateString.push(array[i].date);
}  

highchart(dateString);

ああ、そしてあなたは間違いなくこれに変更する必要があります。

<input type="text" id="box" value="a"/>


追加の調査情報:( 古い状況では)

console.log(stringArray);
highchart(stringArray);

空でした。合格しますか

highchart(["ab", "b", "c"]);

その後、あなたは大丈夫だろう。これは、空の配列を渡すため、JSONデータを取得する前にグラフを作成しているためです。そのため、作成をJSON関数に移動しました。

于 2012-08-02T13:19:13.143 に答える
0

xAxisを日時として使用してみませんか:

xAxis: {
    type: 'datetime'
},

Twitterデータから日付をJS時間に解析し、シリーズデータ配列として次のようなものを使用します。

[[<jstime1>, "big cool tweet1"], [<jstime2>, "big cool tweet2"]] 
于 2012-08-02T13:01:16.047 に答える