【问题标题】:Latex in y-axis title in plotly not workingy轴标题中的乳胶无法正常工作
【发布时间】:2021-03-19 18:12:06
【问题描述】:

你能告诉我为什么fig.update_yaxes(title=dict(text="$\text{This is a test:} \sqrt{2^4}$")在下面的代码中不起作用

import plotly.express as px
fig = px.bar(df, x=["Apples", "Oranges"], y=[10,20], color=["Here", "There"],
    labels=dict(x="Fruit", y="Amount", color="Place")
)

fig.update_yaxes(title=dict(text="$\text{This is a test:} \sqrt{2^4}$", font_size=16)
                )

fig.show()

给予

【问题讨论】:

  • 您使用的是什么浏览器。我注意到 Firefox 也有同样的问题,但在 Chrome 中一切似乎都运行良好。顺便说一句,请注意您没有在 Python 字符串中转义反斜杠。我建议使用text=r'$\text{...} \sqrt{...}' 或转义反斜杠 - text='\\text{...} \\sqrt{...}'
  • 是的 Firefox。不是 Safari 的问题。从未尝试过 Chrome(但请参阅下面的 vestland 答案)。

标签: python latex plotly yaxis


【解决方案1】:

要确定为什么它对您不起作用,我必须知道:

  1. 你的plotly version,和
  2. 你如何展示你的身材 (JupyterLab?),以及
  3. 是否有enough space for your title 用于输出您的图形。

因为它对我来说很好用:

我正在 JupyterLab 中运行 Plotly '4.14.3'

和你的代码一样:

import plotly.express as px
fig = px.bar(df, x=["Apples", "Oranges"], y=[10,20], color=["Here", "There"],
    labels=dict(x="Fruit", y="Amount", color="Place")
)

fig.update_yaxes(title=dict(text="$\text{This is a test:} \sqrt{2^4}$", font_size=16)
                )

fig.show()

编辑 1:谷歌浏览器

事实证明,这个问题可能与您运行的浏览器有关。我目前正在运行 Microsoft Edge。但这是使用 Chrome 的相同代码和图,没有标题

【讨论】:

  • 非常感谢您的回答。 (1) 我刚刚将 Plotly 从 4.14.1 更新为 4.14.3。然而不幸的是,问题仍然存在。 (2) 我正在使用Jupyter NotebookFirefox 浏览器。 (3) 任何其他头衔,例如fig.update_yaxes(title=dict(text="This is a title", font_size=16)) 显示正常;但是,如果我使用 $,例如fig.update_yaxes(title=dict(text="$This is a title$", font_size=16))标题没了?我不知道为什么?
  • @Hans 这非常有趣。我实际上正在运行 Edge。等一下,我试试其他浏览器...
  • @Hans 使用 JupyterLab 和 MS Edge 对我来说效果很好,但 not 与 Google Chrome 一起使用。不过我不知道为什么……
  • 我只是在Safaribrowser 中的Jupyter Notebook 中运行代码(我在这里使用的是一台相当旧的Mac)。 Là voila - 它有效!这似乎是Firefox(也许还有Google Chrome)的一个特定问题。我不知道为什么
  • @hans 您是否考虑将我的建议标记为已接受的答案?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 1970-01-01
  • 2022-08-18
  • 2017-08-12
  • 1970-01-01
相关资源
最近更新 更多