【问题标题】:How to introduce linebreak in plotly axislabels while using latex encodings?如何在使用乳胶编码时在绘图轴标签中引入换行符?
【发布时间】:2020-01-31 13:20:39
【问题描述】:

我想在我的绘图图中有一个 2 行的刻度文本,并且必须依赖乳胶编码来实现其他一些功能。 似乎在这种特殊情况下,html编码都没有

<br>

乳胶也没有

\linebreak
\newline
\\

在该字符串中添加时似乎可以工作(简单地忽略 html,将乳胶作为符号添加到文本中)。

import plotly.graph_objects as go
import numpy as np

x = np.arange(10)

fig = go.Figure(data=go.Scatter(x=x, y=x**2))
fig.update_xaxes(tickvals=range(10),ticktext=['$'+str(x)+'\linebreak \color{green}{A}$' for x,y in enumerate(range(10))])#$\color{green}{A}}$
fig.show()

有没有办法做到这一点?

【问题讨论】:

  • 你能不能这么好心,分享一个最小的可重现的例子!

标签: python latex plotly line-breaks axis-labels


【解决方案1】:

html 被忽略了?听起来像是某处输入错误。对于简单的换行,无需释放 Latex。以下示例将 x 刻度设置为 x 值和 x**2,由两个换行符分隔。 这至少对我有用。

剧情:

代码:

import plotly.graph_objects as go
import numpy as np

x = np.arange(10)

fig = go.Figure(data=go.Scatter(x=x, y=x**2))

t1=x.tolist()

x1=x**2
t2=x1.tolist()

z=['<br><br>'.join(map(str, i)) for i in zip(t1, t2)]

fig.update_xaxes(tickvals=x,ticktext=z)
fig.show()

这适用于您希望在这些列表的每个对应元素之间换行的任何两个列表。

【讨论】:

  • 没错,我知道。但我也需要乳胶功能;那实际上是错误开始发生的时候。之前我也很好地坚持使用 html
猜你喜欢
  • 2017-08-12
  • 2023-02-14
  • 2010-12-29
  • 2011-02-08
  • 1970-01-01
  • 2011-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多