昨天下午加今天上午一直在调程序
结果调到最后,发现所有的问题无外乎两种
1、需要的文件没有导入
2、中文乱码问题
json里所有的数据都是没编码的,所以如果要写中文的话,需要在前面加上u
利用数据出图代码
html
<div id="chart-bandwidth"></div>
$('#submit').click(function() { var day = $('#beginDate').val(); var nodename = $('#nodename').find("option:selected").text(); if (nodename == "0") { return; } FusionCharts._fallbackJSChartWhenNoFlash(); var chartBindwidth = new FusionCharts("/static/swf/MSCombiDY2D.swf", "cd", "100%", "300", "0", "1"); var urlBigNode = "/bignode/bandwidth/"; urlBigNode += "?nodename="+nodename; urlBigNode += "%26beginDate="+day; chartBindwidth.setJSONUrl(urlBigNode); chartBindwidth.render("chart-bandwidth"); });
views.py
data = Bignode.objects.filter(**args).order_by("time")
mscombidy2d = MSCombiDY2D(u"大节点带宽", beginDate)
mscombidy2d.categories = {"category": [{"name": d.time.strftime("%H:%M")} for d in data]}
print mscombidy2d.categories
mscombidy2d.dataset = [
{"seriesname": u"剩余带宽", "parentyaxis": "P", "color": "5a885e",
"data": [{"value": "%s" %(d.remainBandwidth,)} for d in data]
},
{"seriesname": u"带宽利用率", "parentyaxis": "S", "renderas": "Line", "color": "dca657", "anchorbgcolor": "dca657",
"data": [{"value": "%s" %(d.ratio,)} for d in data]
}
]
res = json.dumps(mscombidy2d.to_dict(), ensure_ascii=False, sort_keys=True, indent=4)
return HttpResponse(res)