【问题标题】:I'm getting overlap with my pygal histogram我与我的 pygal 直方图重​​叠
【发布时间】:2018-01-29 19:17:56
【问题描述】:

我正在尝试可视化在浏览器中查看的 pygal 直方图上滚动两个 D6 的结果。当鼠标悬停在其中一个栏上时,我得到数字重叠。 example of overlap 我将在下面包含我的代码。

import pygal
from die import Die

# Create two D6 dice
die_1 = Die()
die_2 = Die()

# Make some results and store in a list.
results = []
for roll_num in range(1000):
    result = die_1.roll() + die_2.roll()
    results.append(result)

# Analyze the results.
frequencies = []
max_result = die_1.num_sides + die_2.num_sides
for value in range(2, max_result+1):
    frequency = results.count(value)
    frequencies.append(frequency)

# Visualize the results.
hist = pygal.Bar()
hist.force_uri_protocol = 'http'

hist.title = "Results of rolling two D6 dice 1000 times."
hist.x_labels = ['2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']
hist.x_title = "Result"
hist.y_title = "Frequency of Result"

hist.add('D6 + D6', frequencies)
hist.render_to_file('die_visual.svg')

【问题讨论】:

  • 我要导入的 Die 类基本上只是创建默认 D6 和 .roll() 的一些代码。
  • 我复制了您的代码,当我运行它时,工具提示的行为符合预期。每个栏显示它自己的工具提示,并且没有与其他列重叠。我在 Mac 上(我在 Ubuntu 上看到了你的),但我尝试了 Firefox 和 Safari,并且都正确呈现。为了帮助进一步调试,您使用的是什么版本的 pygal、python 和 firefox,因为代码似乎适用于我的设置。
  • 感谢您的帮助。我在虚拟环境和 pygal 2.4 中使用 python 3.6.3。我的 Firefox 版本是 12.0
  • 我也在运行 python 3.6.3 和 pygal 2.4。但是,我的 Firefox 比你的(58.0.1)更新得多。这可能是 Firefox 的问题,因为我没有看到您的代码有任何问题。我有一些想法可以进一步调试。 1)您是否将firefox升级到更新版本,看看是否有效。 2)上传您的实际 .svg 文件并发布一个链接,我会看看工具提示是否适合我。 3) 我可以将我生成的 .svg 发送给您,我们可以查看它是否在您的系统上正确呈现。
  • 感谢您的所有帮助。我运行“sudo apt-get upgrade”,ubuntu 告诉我我所有的软件都是最新的。如果我落后 46 次更新,我不确定会发生什么。我找不到上传 .svg 的方法。很抱歉在这方面如此“菜鸟”。

标签: python pygal


【解决方案1】:

我已经复制了您的代码,并且能够创建一个 .svg 文件,当在两种不同的浏览器(Firefox 和 Safari)中查看时,工具提示可以正常工作。

在 cmets 线程中,我们都使用 Python 3.6.3 和 Pygal 2.4。唯一的区别似乎是浏览器版本(和操作系统)。

我建议将 firefox 升级到更新的版本,看看是否能解决您的问题。

【讨论】:

    猜你喜欢
    • 2016-12-19
    • 2021-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-23
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    相关资源
    最近更新 更多