fusioncharts出圖

昨天下午加今天上午一直在調程序

結果調到最後,發現所有的問題無外乎兩種

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)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章