Skip to main content
v2.2

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 behavior
  • dict: 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,
},
})