Как ввести перенос строки в графических осевых метках при использовании латексных кодировок? - PullRequest
1 голос
/ 02 октября 2019

Я хочу иметь двухстрочный текст в моей графической диаграмме и полагаться на латексное кодирование для некоторых других функций. Кажется, что в данном конкретном случае ни 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()

Есть ли способ добиться этого?

1 Ответ

0 голосов
/ 02 октября 2019

HTML просто игнорируется? Похоже, что где-то есть ошибка ввода. Для простого перехода на новую строку нет необходимости использовать латекс. В следующем примере x-метки устанавливаются как значения x и x ** 2, разделенные двумя переносами строк. По крайней мере, это работает на моем конце.

Сюжет:

enter image description here

Код:

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()

Это будет работать для любых двух списков, в которых вы хотите поставить разрыв строки между каждым соответствующим элементом этих списков.

...