Javascript 如何用Django-nvd3绘制圆环图
我使用django-nvd3作为可视化库,它们提供有限数量的受支持图表。 有没有办法自定义文档中提供的饼图,使其成为油炸圈饼图Javascript 如何用Django-nvd3绘制圆环图,javascript,css,nvd3.js,Javascript,Css,Nvd3.js,我使用django-nvd3作为可视化库,它们提供有限数量的受支持图表。 有没有办法自定义文档中提供的饼图,使其成为油炸圈饼图 def statistics(request): context=RequestContext(request) xdata = ["Apple", "Apricot", "Avocado", "Banana", "Boysenberries", "Blueberries", "Dates", "Grapefruit", "Kiwi", "Lemon"] ydata
def statistics(request):
context=RequestContext(request)
xdata = ["Apple", "Apricot", "Avocado", "Banana", "Boysenberries", "Blueberries", "Dates", "Grapefruit", "Kiwi", "Lemon"]
ydata = [52, 48, 160, 94, 75, 71, 490, 82, 46, 17]
chartdata = {'x': xdata, 'y': ydata}
charttype = "pieChart"
chartcontainer = 'piechart_container'
data = {
'charttype': charttype,
'chartdata': chartdata,
'chartcontainer': chartcontainer,
'extra': {
'x_is_date': False,
'x_axis_format': '',
'tag_script_js': True,
'jquery_on_ready': False,
}
}
return render_to_response('App/statistics.html',data)
我可以通过以下方式更改图表的大小:
{% include_container chartcontainer 426 400 %}
只是我自己偶然发现了这个问题。迟做总比不做好 我只是查看了JSforDonut与normal()的代码差异,并注意到额外的4个设置
'labelThreshold':0.5,
'labelType':'percent',
'donut':True,
'donutRatio':0.35
所以我把它们放在数据的“额外”部分,这似乎是可行的
编辑:我注意到标签设置没有起作用。
在浏览了几次页面源代码和nvd3_tags.py之后,我意识到需要引用labelType并将它们嵌入另一个名为chart_attr的字典中。见下文
def statistics(request):
context=RequestContext(request)
xdata = ["Apple", "Apricot", "Avocado", "Banana", "Boysenberries", "Blueberries", "Dates", "Grapefruit", "Kiwi", "Lemon"]
ydata = [52, 48, 160, 94, 75, 71, 490, 82, 46, 17]
chartdata = {'x': xdata, 'y': ydata}
charttype = "pieChart"
chartcontainer = 'piechart_container'
data = {
'charttype': charttype,
'chartdata': chartdata,
'chartcontainer': chartcontainer,
'extra': {
'x_is_date': False,
'x_axis_format': '',
'tag_script_js': True,
'jquery_on_ready': False,
'donut':True,
'donutRatio':0.35,
'chart_attr':{
'labelThreshold':0.5,
'labelType':'\"percent\"',
}
}
}
return render_to_response('App/statistics.html',data)