How to Use Plotly for Interactive Charts in Python
Use the
plotly.express or plotly.graph_objects libraries in Python to create interactive charts by defining data and chart type, then calling fig.show() to display the chart in a browser or notebook. Plotly automatically adds zoom, pan, and hover features for interactivity.Syntax
Plotly charts are created by importing plotly.express or plotly.graph_objects. You define a figure with data and chart type, then call fig.show() to display it.
import plotly.express as px: Import the easy-to-use express module.fig = px.chart_type(data, x='x_column', y='y_column'): Create a chart figure.fig.show(): Render the interactive chart.
python
import plotly.express as px data = {'x': [1, 2, 3], 'y': [4, 1, 2]} fig = px.line(data, x='x', y='y') fig.show()
Example
This example shows how to create a simple interactive line chart using Plotly Express. The chart will have zoom, pan, and hover tooltips automatically enabled.
python
import plotly.express as px import pandas as pd # Create sample data data = pd.DataFrame({ 'Day': ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'], 'Sales': [10, 15, 13, 17, 14] }) # Create line chart fig = px.line(data, x='Day', y='Sales', title='Sales Over Days') # Show interactive chart fig.show()
Common Pitfalls
Common mistakes when using Plotly include:
- Not calling
fig.show(), so the chart does not display. - Passing data in wrong format (Plotly expects data frames or dicts with matching keys).
- Using incompatible chart types with data (e.g., line chart with categorical x-axis without ordering).
- Forgetting to install Plotly with
pip install plotly.
Example of a wrong approach and the fix:
python
# Wrong: Missing fig.show(), chart won't display import plotly.express as px data = {'x': [1, 2], 'y': [3, 4]} fig = px.scatter(data, x='x', y='y') # Right: Add fig.show() to display fig.show()
Quick Reference
| Function | Description |
|---|---|
| px.line(data, x, y) | Create a line chart |
| px.scatter(data, x, y) | Create a scatter plot |
| px.bar(data, x, y) | Create a bar chart |
| fig.show() | Display the interactive chart |
| fig.write_html('file.html') | Save chart as an HTML file |
Key Takeaways
Import plotly.express and create figures with your data and chart type.
Always call fig.show() to display the interactive chart.
Plotly charts come with built-in zoom, pan, and hover features.
Ensure your data format matches the chart requirements.
Install Plotly using pip before using it.