.options.sonification


class: SonificationOptions

class SonificationOptions(**kwargs)[source]

Options for configuring sonification and audio charts.

copy(other=None, overwrite=True, **kwargs)

Copy the configuration settings from this instance to the other instance.

Parameters:
  • other (HighchartsMeta) – The target instance to which the properties of this instance should be copied. If None, will create a new instance and populate it with properties copied from self. Defaults to None.

  • overwrite (bool) – if True, properties in other that are already set will be overwritten by their counterparts in self. Defaults to True.

  • kwargs – Additional keyword arguments. Some special descendents of HighchartsMeta may have special implementations of this method which rely on additional keyword arguments.

Returns:

A mutated version of other with new property values

classmethod from_dict(as_dict: dict, allow_snake_case: bool = True)

Construct an instance of the class from a dict object.

Parameters:
  • as_dict (dict) – A dict representation of the object.

  • allow_snake_case (bool) – If True, interprets snake_case keys as equivalent to camelCase keys. Defaults to True.

Returns:

A Python object representation of as_dict.

Return type:

HighchartsMeta

classmethod from_js_literal(as_str_or_file, allow_snake_case: bool = True, _break_loop_on_failure: bool = False)

Return a Python object representation of a Highcharts JavaScript object literal.

Parameters:
  • as_str_or_file (str) – The JavaScript object literal, represented either as a str or as a filename which contains the JS object literal.

  • allow_snake_case (bool) – If True, interprets snake_case keys as equivalent to camelCase keys. Defaults to True.

  • _break_loop_on_failure (bool) – If True, will break any looping operations in the event of a failure. Otherwise, will attempt to repair the failure. Defaults to False.

Returns:

A Python object representation of the Highcharts JavaScript object literal.

Return type:

HighchartsMeta

classmethod from_json(as_json_or_file, allow_snake_case: bool = True)

Construct an instance of the class from a JSON string.

Parameters:
  • as_json_or_file – The JSON string for the object or the filename of a file that contains the JSON string.

  • allow_snake_case (bool) – If True, interprets snake_case keys as equivalent to camelCase keys. Defaults to True.

Returns:

A Python objcet representation of as_json.

Return type:

HighchartsMeta

get_required_modules(include_extension=False) List[str]

Return the list of URLs from which the Highcharts JavaScript modules needed to render the chart can be retrieved.

Parameters:

include_extension (bool) – if True, will return script names with the '.js' extension included. Defaults to False.

Return type:

list of str

to_dict() dict

Generate a dict representation of the object compatible with the Highcharts JavaScript library.

Note

The dict representation has a property structure and naming convention that is intentionally consistent with the Highcharts JavaScript library. This is not Pythonic, but it makes managing the interplay between the two languages much, much simpler.

Returns:

A dict representation of the object.

Return type:

dict

to_js_literal(filename=None, encoding='utf-8', careful_validation=False) str | None

Return the object represented as a str containing the JavaScript object literal.

Parameters:
  • filename (Path-like) – The name of a file to which the JavaScript object literal should be persisted. Defaults to None

  • encoding (str) – The character encoding to apply to the resulting object. Defaults to 'utf-8'.

  • careful_validation – if True, will carefully validate JavaScript values

along the way using the esprima-python library. Defaults to False.

Warning

Setting this value to True will significantly degrade serialization performance, though it may prove useful for debugging purposes.

Return type:

str or None

to_json(filename=None, encoding='utf-8')

Generate a JSON string/byte string representation of the object compatible with the Highcharts JavaScript library.

Note

This method will either return a standard str or a bytes object depending on the JSON serialization library you are using. For example, if your environment has orjson, the result will be a bytes representation of the string.

Parameters:
  • filename (Path-like) – The name of a file to which the JSON string should be persisted. Defaults to None

  • encoding (str) – The character encoding to apply to the resulting object. Defaults to 'utf-8'.

Returns:

A JSON representation of the object compatible with the Highcharts library.

Return type:

str or bytes

static trim_dict(untrimmed: dict, to_json: bool = False, context: str = None) dict

Remove keys from untrimmed whose values are None and convert values that have .to_dict() methods.

Parameters:
  • untrimmed (dict) – The dict whose values may still be None or Python objects.

  • to_json (bool) – If True, will remove all keys from untrimmed that are not serializable to JSON. Defaults to False.

  • context (str or None) – If provided, will inform the method of the context in which it is being run which may inform special handling cases (e.g. where empty strings may be important / allowable). Defaults to None.

Returns:

Trimmed dict

Return type:

dict

static trim_iterable(untrimmed, to_json=False, context: str = None)

Convert any EnforcedNullType values in untrimmed to 'null'.

Parameters:
  • untrimmed (iterable) – The iterable whose members may still be None or Python objects.

  • to_json (bool) – If True, will remove all members from untrimmed that are not serializable to JSON. Defaults to False.

  • context (str or None) – If provided, will inform the method of the context in which it is being run which may inform special handling cases (e.g. where empty strings may be important / allowable). Defaults to None.

Return type:

iterable

property after_series_wait: int | float | Decimal | None

The time to wait in milliseconds after each data series when playing the visualization’s data series in sequence. Defaults to 700.

Return type:

numeric or None

property default_instrument_options: InstrumentTrackConfiguration | None

Default sonification options for all instrument tracks.

Warning

If specific options are also set on individual tracks or per-series, this configuration will be overridden.

Return type:

InstrumentTrackConfiguration or None

property default_speech_options: SpeechTrackConfiguration | None

Default sonification options for all speech tracks. .. warning:

If specific options are also set on individual tracks or per-series, this configuration will be *overridden*.
Return type:

SpeechTrackConfiguration or None

property duration: int | float | Decimal | None

The total duration of the sonification, expressed in milliseconds. Defaults to 6000.

Return type:

numeric or None

property enabled: bool | None

If True, enables sonification functionality on the chart. Defaults to True.

Return type:

bool or None

property events: SonificationEvents | None

Event handlers for sonification.

Return type:

SonificationEvents or None

property global_context_tracks: ContextTrackConfiguration | None

Context tracks to add globally, an array of either instrument tracks, speech tracks, or a mix.

Note

Context tracks are not tied to data points, but play at a set interval - either based on time or on prop values.

Return type:

ContextTrackConfiguration or None

property global_tracks: InstrumentTrackConfiguration | None

Global tracks to add to every series.

Return type:

InstrumentTrackConfiguration or None

property master_volume: int | float | Decimal | None

The overall/master volume for the sonification, from 0 to 1. Defaults to 0.7.

Return type:

numeric or None

property order: str | None

The order in which to play the sonification for data series. Accepts either:

  • 'sequential' where the series play individually one after the other or

  • 'simultaneous' where the series play at the same time

Defaults to 'sequential'.

Return type:

str or None

property point_grouping: SonificationGrouping | None

Options for grouping data points together when sonifying.

This allows for the visual presentation to contain more points than what is being played.

If not enabled, all visible / uncropped points are played.

Return type:

SonificationGrouping or None

property show_crosshair: bool | None

If True, show X and Y crosshairs (if defined on the chart) as the sonification plays. Defaults to True.

Warning

If multiple tracks that play at different times try to show crosshairs, it can be glitchy. Therefore, it is recommended in those cases to turn this on/off for individual tracks using the .show_play_marker property.

Return type:

bool or None

property show_tooltip: bool | None

If True, show tooltips as the sonification plays. Defaults to True.

Warning

If multiple tracks that play at different times try to show tooltips, it can be glitchy. Therefore, it is recommended in those cases to turn this on/off for individual tracks using the .show_play_marker property.

Return type:

bool or None

property update_interval: int | float | Decimal | None

The number of milliseconds to wait between each recomputation of the sonification, if the chart updates rapidly.

Tip

This avoids slowing down processes like panning.

Return type:

numeric or None


Sub-components

Module

Classes / Functions

.options.sonification.grouping

SonificationGrouping

.options.sonification.mapping

SonificationMapping AudioParameter AudioFilter PitchParameter TremoloEffect

.options.sonification.track_configurations

InstrumentTrackConfiguration SpeechTrackConfiguration ContextTrackConfiguration TrackConfigurationBase ActiveWhen