IndexTranslator
- class qf_lib.plotting.helpers.index_translator.IndexTranslator(labels_to_locations_dict: Optional[Mapping[str, Number]] = None)[source]
Bases:
object
Object which automatically translates label-indexed data into number-indexed data.
- Parameters:
labels_to_locations_dict (Mapping[str, Number]) – Contains a mapping from labels to numbers (used as index values for plotting). Must have unique keys and unique values.
Methods:
inv_translate
(translated_values)Translates numeric coordinate into label.
setup_ticks_and_labels
(chart)Setups ticks' locations and labels in the given chart if it used IndexTranslator.
translate
(values)Translates label into numeric coordinate.
- inv_translate(translated_values: Union[Number, Sequence[Number]]) Sequence[str] [source]
Translates numeric coordinate into label. Requirement: the Translator must be familiar with mapping the label into numeric coordinate (either the translate must have been called or the labels_to_locations_dict must contain a proper entry).
- Parameters:
translated_values – numeric values to be changed into labels (e.g. [0.0, 1.0, 2.0])
- Returns:
labels corresponding to numeric values
- Return type:
labels
- classmethod setup_ticks_and_labels(chart: Chart)[source]
Setups ticks’ locations and labels in the given chart if it used IndexTranslator.
- translate(values: Union[str, Sequence[str]]) Sequence[Number] [source]
Translates label into numeric coordinate. If the translation is done for the first time for this value it may modify the state of the translator (it may introduce a new translation).
- Parameters:
values – values to be translated (e.g. [“SPY”, “GOOGL”])
- Returns:
value translated into numeric coordinate
- Return type:
translated values