Как получить пробел в виде разделителя тысяч на моей оси - PullRequest
0 голосов
/ 09 января 2019

С NumeralTickFormatter(format='0,0') я смог получить запятую, например, в качестве разделителя тысяч, но не смог найти способ использовать пробел.

Я также пытался использовать параметр language='fi', но это не помогло, или я использовал его неправильно.

1 Ответ

0 голосов
/ 09 января 2019

Насколько я знаю, встроенная NumeralTickFormatter не поддерживает это, поскольку базовая сторонняя библиотека JavaScript, на которой она построена, не имеет режима для отображения с пробелами. Тем не менее, Bokeh имеет FuncTickFormatter , который позволяет вам предоставить свой собственный фрагмент JS, чтобы выполнить любое форматирование:

from bokeh.models import FuncTickFormatter
from bokeh.plotting import figure, show, output_file

output_file("formatter.html")

p = figure(plot_width=500, plot_height=500)
p.circle([0, 10], [10, 1000000], size=30)

p.yaxis.formatter = FuncTickFormatter(code="""
    parts = tick.toString().split(".");
    parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, " ");
    return parts.join(".");
""")

show(p)

Результат:

enter image description here

...