[英]Formatting JSON from a Pandas data frame for Highcharts within a Django template
我有一個已轉換為JSON的Pandas數據框,如下所示:
json_data = data_df.to_json()
原始數據框看起來類似於以下內容:
col1 col2 col3 col4
0 1 2 2 -1
1 2 4 3 -2
2 3 6 4 -3
3 4 8 5 -4
4 5 10 6 -5
...
JSON字符串與此類似:
[{"col1":1,"col2":2,"col3":2,"col4":-1},{"col1":2,"col2":4,"col3":3,"col4":-2},{"col1":3,"col2":6,"col3":4,"col4":-3},{"col1":4,"col2":8,"col3":5,"col4":-4}]
我的Highcharts
實現如下:
$(document).ready(function() {
var my_data = '{{ json_data }}'
// create data chart
$('#container').highcharts({
chart: {
renderTo: 'chart_panel',
type: 'line',
},
legend: {layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 0,
},
title: {text: 'Roehrig Damper Data',
x: -20 // center title
},
xAxis: {title: {text: 'Velocity (m/sec)'}},
yAxis: {title: {text: 'Force (N)'}},
series: [ {data: my_data} ],
});
});
{{ json_data }}
來自我的Django python視圖,我已經確認通過瀏覽器控制台正確設置了格式。 目前,我的代碼僅顯示空白的Highcharts
圖表,其中填充了零數據。 我嘗試了幾種不同的方式來操縱所需的數據,但是沒有成功。
我的目標是將col2
對於col1
繪制,並在同一圖表col4
對於col3
繪制,換句話說,x軸將同時由col1
和col3
定義。
有沒有一種方法可以實現上述目標,如果可以,該如何實現?
在@Andrew_Lvov的幫助下,我現在有了一個看起來像這樣的JSON對象:
json_data = [
{
'name': "col1",
'data': array([1, 2, 3, 4, 5])},
{
'name': "col2",
'data': array([2, 4, 6, 8, 10])},
// etc.
]
現在我的問題是它將單詞array
添加到數據中。
嘗試
var myData = {{ json_data | safe }};
更新 :
您的數據應采用以下格式:
json_data = [
{
'name': "col1",
'data': [1, 2, 3, 4, 5]},
{
'name': "col2",
'data': [2, 4, 6, 8, 10]},
]
系列參數:
series: myData
更新#2:
json_data = [{'data': list(value.values), 'name': key} for key, value in data_df.items()]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.