Kann ich Ticker in einem Plot in benutzerdefinierte Text-Ticker ändern?

Ich versuche, die x-Achse in einem Plot zu ändern, um ordinale Textwerte zu erhalten, und es fällt mir schwer, eine Problemumgehung zu finden. Hier ist mein Ziel: Ich möchte die IRR von 2 vorgeschlagenen Änderungen eines Regierungsprogramms für Rentner mit einem mittleren Einkommen von 20 000 $ und 50 000 $ in ihrem ganzen Leben zeige

Also, ich habe 4 IRR: 2 für die mit 20 000 $ und 2 für die mit 50 000 $. Was schwierig ist, ist, dass ich keine exakten x-Koordinaten habe; Stattdessen verwendete ich nominale x-Koordinaten, um meine Histogramm-Bins zu erstellen (mit der .quad () -Methode).

Dann habe ich mit der FixedTicker-Klasse nur zwei Ticker angezeigt: die, die zwischen den Bins liegen, die die einzelnen Ertragskategorien beschreiben. An diesem Punkt mache ich das in der Hoffnung, dass ich diese festen Ticker in einige andere benutzerdefinierte Ticker ändern kann (vielleicht mit einem Diktat?), Aber ich weiß es wirklich nicht.

Ich vermute hier, also bin ich vielleicht völlig falsch mit dieser FixedTicker-Strategie. Gibt es tatsächlich eine Möglichkeit, Ticker zu ändern? Wenn nicht, gibt es einen anderen Weg?

Ich habe versucht, Kategorien auf der x-Achse zu verwenden, aber das Problem war, dass ich keine Paare wie category: value habe, sondern eher category: (value, value).

Hier ist mein Code:

from bokeh.io import show, output_notebook
from bokeh.plotting import figure
from bokeh.models import FixedTicker

output_notebook()

irr_fed  = [4.24, 3.04]
irr_prov = [2.59, 2.83]

plot = figure(title="Internal Rates of Return: Federal vs. Provincial",
       y_range=(0,5), x_range=(0,12))

plot.quad(top=[irr_fed[0], irr_prov[0], irr_fed[1], irr_prov[1]], bottom=0,
          left=[1,3.5,7,9.5], right=[2.5,5,8.5,11])

plot.xaxis[0].ticker=FixedTicker(ticks=[3, 9])

show(plot)

Ich würde die Handlung zeigen, die ich hier erhalte, aber ich kann noch keine Bilder veröffentlichen, da ich neu hier bin und keinen ausreichenden Ruf habe. Wenn Sie es sehen möchten, funktioniert der Code in Notebook einwandfrei.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage