2013-10-07 50 views
0

我從我的highcharts系列的django模板中提取數據。我將Year設置爲X軸,將Rating設置爲Y軸,但將年顯示爲小數,例如「1998」年顯示爲「1,998」。我希望一年中不用逗號正常顯示。在highchart中格式化一年

這裏是我的軸線和系列代號:

xAxis: { 
    title: { 
     type: 'datetime', 
     text: 'Year', 
    } 
}, 
yAxis: { 
    title: { 
     text: 'Rating' 
    } 
}, 
series: [{ 
    data: [ 
    {% for item in graph_data %} 
    { 
     name: '{{item}}', 
     x: {{item.year}}, 
     y: {{item.rating}} 
    }, 
    {% endfor %} 
    ] 
}] 

回答

1

如果您使用的日期時間x和y系列中的數據點的數組,你需要使用Date.UTC()轉換世界第一的時間。 type屬性不在title屬性中。

那麼試試這個

xAxis: { 
    title: { 
     text: 'Year', 
    } 
    type: 'datetime' 
}, 
yAxis: { 
    title: { 
     text: 'Rating' 
    } 
}, 
series: [{ 
    data: [ 
    {% for item in graph_data %} 
    { 
     name: '{{item}}', 
     x: Date.UTC({{item.year}}, month, date), 
     y: {{item.rating}} 
    }, 
    {% endfor %} 
    ] 
}] 

小提琴:http://jsfiddle.net/6abdq/1/

+0

它實際上是X:Date.UTC({{item.year}} ,0,0),因爲{{item.year}}調用從django視圖傳遞的變量。但是,謝謝,拋棄我的是type:datetime被放在標題括號內。 – dl8

+0

@ user2027556感謝您的糾正。沒有太注意那部分。如果月份和日期不重要,則實際上是x:Date.UTC({{item.year}},0,1),因爲日期應該是1到31之間的整數 –

0

您可以使用標籤formatter和返回值,inluding dateFormat

+0

標籤格式化程序工作得很好。它似乎更容易使用。你能告訴我一般哪種方式更好,還是取決於情況? –

+0

通常,格式化程序似乎在代碼中更「用戶化」,對用戶來說更透明,但這是我的看法。 –