Interaction
Interactions provide an API to bind events to a picasso chart in a declarative way.
Using interactions in a chart
Each interaction has a type property that identifies the type of interaction
to add to the chart.
To define an interaction, you need to add them in the interactions array:
picasso.chart({ settings: { interactions: [{ type: 'native', key: 'someKey', enable: /* ... */, events: { /* ... */ } }, { type: 'hammer', key: 'anotherKey', enable: /* ... */, gestures: { /* ... */ } }] }});Bundled interactions
picasso.js comes pre-bundled with a native interaction definition:
interactions: [ { type: 'native', key: 'here', enable: function () { // bool or function this.chart /*...*/; return true; }, events: { mousemove: function (e) { // key should point to a native event // handle event here }, keydown: function (e) { // handle event here }, }, },];and together with picasso the following interaction plugin is shipped:
Register a custom interaction
To register a new interaction, use the picasso.interaction registry.
picasso.interaction(name, definition)
namestring. Name of the interaction to register.definitionobjectkeygetter (optional) Returns the key identifier for this definition. Used for making updates with changes to the definition a smooth ride.setfunction Set interaction settings and add/update event handlers to the chart element.offfunction Turn off interactions.onfunction Turn on interactions.destroyfunction Remove all bound events.