【发布时间】:2015-07-16 21:08:22
【问题描述】:
使用下面的代码,我可以生成一个pie chart。当我将鼠标悬停在饼的某个切片上时,它会显示该切片所占的百分比。
import pygal
results = [
(15232,'Value 1'),
(947,'Value 2'),
(246,'Value 3'),
(117,'Value 4'),
(50,'Value 5'),
(50,'Value 6'),
(50,'Value 7'),
(50,'Value 8'),
]
pie_chart = pygal.Pie()
pie_chart.title = 'Title!'
for r in results:
pie_chart.add(r[1], r[0])
pie_chart.value_formatter = lambda x: "%.15f" % x
pie_chart.render_to_file('piechart.svg')
这会生成一个如下所示的饼图(如果我将鼠标悬停在“值 2”上):
我遇到的问题是小切片。很难看到我在盘旋的是什么。在上面的示例中,这对于值 5 到 8 尤其明显,但即使在值 4 上,也很难分辨出哪个悬停在上面。有没有办法在工具提示中包含标签?
我找到的最接近的是value_formater,但这似乎在饼图中被忽略了(正如上面的示例所证明的那样,工具提示中只有两位小数,尽管pie_chart.value_formatter = lambda x: "%.15f" % x 代码行)。
【问题讨论】:
-
这很奇怪。我已经试用了您的代码,我得到了 15 个小数点和标签 (screenshot)。也许您设置了一些其他选项,或者您的 HTML 中有一些东西?..
-
@P_S,你可能有更新版本的 Pygal。从我发布问题到现在,它似乎达到了 2.0 版。
-
我愿意。你试过更新吗?问题还在吗?
-
我使用相同的代码并在网络浏览器中打开了 piechart.svg。当我将鼠标悬停在它上面时,我似乎看不到任何东西。我应该使用任何特定的应用程序来打开它吗?