我可以让 Bokeh 不在一行中生成 javascript 吗?

Can I get Bokeh to NOT generate javascript all on one line?

我以前从未使用过 Bokeh,如果这个问题没有意义,我深表歉意。我有一个其他人使用 Bokeh 生成的图,它有一个巨大的 JSON 对象 (docs_json),它们都在同一行上。我需要将此图导入具有行长度限制的 WordPress 站点。有什么方法可以让 Bokeh 以美化的形式生成 JSON 而不是将整个东西压缩到一行中?

我的情况是我正在处理连续生成的 100 多个图,所以我不想在生成每个图后手动触摸它。

是的,最简单的方法是在 运行 任何 Bokeh 代码时使用 BOKEH_PRETTY 环境变量,例如

BOKEH_PRETTY=true python iris.py

结果 HTML 嵌入 JSON 的输出看起来像:

<script type="application/json" id="4074acb8-0b70-4591-8d43-99873a9e1bc4">
  {
    "9d745210-1f6a-4c22-b8ca-c3d2b3829a8f": {
      "roots": {
        "references": [
          {
            "attributes": {
              "bottom_units": "screen",
              "fill_alpha": {
                "value": 0.5
              },

              ...

        ],
        "root_ids": [
          "ce2c1a38-e3e5-4155-9a80-6860dc284dbc"
        ]
      },
      "title": "Bokeh Application",
      "version": "0.12.15dev1"
    }
  }
</script>

Bokeh 的所有设置及其相关的环境变量都记录在参考指南中:

https://docs.bokeh.org/en/latest/docs/reference/settings.html