【问题标题】:Tooltips are not working in my pygal bar graph?工具提示在我的 pygal 条形图中不起作用?
【发布时间】:2016-06-22 07:56:16
【问题描述】:

按照我的 python 书,我使用 pygal 制作了一个条形图。我将信息呈现为 .svg 文件并在我的网络浏览器中打开它。我的书说情节是互动的,如果你将鼠标悬停在它上面,它会显示每个条的价值。但是,每当我将鼠标悬停在图表上时,什么都没有发生。我正在使用 mac 和 google chrome 查看文件。

谢谢!

【问题讨论】:

  • 有人吗?没人知道吗?

标签: python svg pygal


【解决方案1】:

我在我的 Windows 10 机器上遇到了同样的问题。 MS Edge 和 Google Chrome 都不会将图表呈现为交互式。

在 python 中执行的脚本和最终渲染之间似乎发生了一些事情。我之所以注意到这一点是因为 pygal 网站上的交互式示例在两个浏览器中都可以正常工作,但是当示例脚本粘贴到 python 中并执行时,它就不能正常工作了。

【讨论】:

【解决方案2】:

您需要在 html 中包含 <script type="text/javascript" src="/js/pygal-tooltips.js"></script>

【讨论】:

    【解决方案3】:

    Pygal 2.0 呈现工具提示的方式与 Pygal 1.9 略有不同。如果您在浏览器中查看图表,则需要告诉 Pygal 呈现工具提示以便在浏览器中查看。 force_uri_protocol 参数需要设置为'http'。以下代码示例显示了如何执行此操作:

    hist = pygal.Bar()
    hist.force_uri_protocol = 'http'
    

    例如,这是一个应该可以运行的最小程序:

    import pygal
    
    squares = [0, 1, 4, 9, 16, 25]
    
    chart = pygal.Bar()
    chart.force_uri_protocol = 'http'
    chart.add('Squares', squares)
    chart.render_to_file('squares.svg')
    

    【讨论】:

      【解决方案4】:

      为了让 pygal 在浏览器中显示工具提示,必须将其加载到 html 中的 embed 标记中 例如这里是 sn-p 我用于在使用烧瓶渲染的条形图中加载工具提示

      <figure>
          <embed type="image/svg+xml" src="{{ stat|safe }}"></embed>
      </figure>
      

      以及需要在head标签内给出的javascript库。

          <script type="text/javascript" src="http://kozea.github.com/pygal.js/latest/pygal-tooltips.min.js"></script>
      

      【讨论】:

        【解决方案5】:

        这个问题解决了吗? 交互是使用带有 svg 文件中的 th href 的在线脚本完成的。 如果您没有互联网链接,它将无法正常工作。 如果您已经解决了这个问题,请告诉我们

        【讨论】:

          猜你喜欢
          • 2018-03-09
          • 2020-08-09
          • 2017-01-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-03-31
          相关资源
          最近更新 更多