User Interactions
LightningChart Python allows developers to control user interactions with charts and components using the set_user_interactions() method. This can disable, restore, or customize interactions like pan, zoom, drag, and more. It provides consistent customization for all major chart types and UI elements.
chart.set_user_interactions(config)
None: disables all user interactions{}or no argument: restores default interaction behaviordict: custom configuration per interaction type
ChartXY
chart.set_user_interactions(None) # Disable all
chart.set_user_interactions() # Restore defaults
# Custom configuration
chart.set_user_interactions({
'pan': {
'lmb': {'drag': True},
'rmb': False,
},
'rectangleZoom': {
'lmb': False,
'rmb': {'drag': True},
},
})
Chart3D
chart.set_user_interactions({
'zoom': {
'wheel': {
'camera': False
}
}
})
Parallel Coordinates
# Disable specific range selector interactions
chart.set_user_interactions({
'rangeSelectors': {
'create': {'doubleClickAxis': False},
'dispose': {'doubleClick': False},
}
})
TreeMap
chart.set_user_interactions(None) # Disable all
chart.set_user_interactions({}) # Restore
chart.set_user_interactions( # Enable/Disable drill down into specific nodes
{
'drillDown': {
'click': False,
},
}
)
Zoom Band Chart
zbc.set_user_interactions({
'pan': {'drag': False, 'click': True},
'zoom': {'wheel': 'undefined', 'dragKnob': False},
})
Constant Line
line.set_user_interactions({
'move': {'drag': False, 'ctrl': {'drag': True}}
})
Band Element
band.set_user_interactions({'scale': False}) # Only disable scaling
Axis
axis.set_user_interactions({
'pan': {
'lmb': {'drag': True},
'rmb': False,
'mmb': False,
},
'rectangleZoom': {
'lmb': False,
'rmb': {'drag': True},
'mmb': False,
},
})