Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Cover image for Regret not learning this in Python
Pratik Pathak
Pratik Pathak

Posted on • Originally published atpratikpathak.com

Regret not learning this in Python

Representing your data in Python is one of the crucial steps, usually whenever I deal with data I just simply usedp.head() (as we do in pandas) and that's it, but it has many disadvantages. Later I found out about the python bokeh which can create interactive graphs. Here I will show you a list of 25+ Python Bokeh examples to learn Python Bokeh.

Python Bokeh is one of the best Python packages for data visualization. Today we are going to see some Python Bokeh Examples. I have also provided the Python Bokeh project source code GitHub. Learn this easy visualization tool and add it to your Python stack.

What is Python Bokeh?

PythonBokeh is a data visualization tool or we can also say Python Bokeh is used to plot various types of graphs. There are various other graph plotting libraries like matplotlib but Python Bokeh graphs are dynamic in nature means you can interact with the generated graph. See the below examples…

Installation 💻:

Python Bokeh can be easily installed using PIP. You can install the Python Bokeh easily by running the command:

pip install bokeh
Enter fullscreen modeExit fullscreen mode

Now everything is ready let’s go through the examples 🏃‍♂️…

1. LinePlot

from bokeh.plotting import figure, show, output_notebookx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="{LinePlot Python Bokeh Example")p.line(x, y, line_width=2)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

Live Preview |Source Code |🌿 Contribute

2.Scatter Plot

from bokeh.plotting import figure, show, output_notebookx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="Scatter Plot Python Bokeh Example by PratikPathak.com")p.circle(x, y, size=10, color="navy", alpha=0.5)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

3.Bar Chart

from bokeh.plotting import figure, show, output_notebookcategories = ["A", "B", "C", "D", "E"]values = [10, 15, 8, 12, 6]p = figure(x_range=categories, title="Bar Chart Python Bokeh Example by PratikPathak.com")p.vbar(x=categories, top=values, width=0.9)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

4.Histogram

from bokeh.plotting import figure, show, output_notebookimport numpy as npdata = np.random.normal(0, 1, 1000)p = figure(title="Histogram Python Bokeh Example by PratikPathak.com")p.hist(data, bins=30, color="navy", alpha=0.5)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

5.Pie Chart

from bokeh.plotting import figure, show, output_notebooklabels = ["A", "B", "C", "D"]values = [10, 15, 8, 12]p = figure(title="Pie Chart Python Bokeh Example by PratikPathak.com")p.wedge(x=0, y=0, radius=0.4, start_angle=0.6, end_angle=2.6, color=["red", "green", "blue", "yellow"], legend_label=labels)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

Live Preview |Source Code |🌿 Contribute

6.Time Series Plot

from bokeh.plotting import figure, show, output_notebookfrom datetime import datetime, timedeltastart = datetime(2023, 1, 1)end = start + timedelta(days=30)x = [start + timedelta(days=i) for i in range((end-start).days)]y = [10, 15, 8, 12, 6, 18, 9, 14, 7, 11, 5, 16, 8, 13, 6]p = figure(x_axis_type="datetime", title="Time Series Plot Python Bokeh Example by PratikPathak.com")p.line(x, y, line_width=2)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

7.Linked Brushing

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models import ColumnDataSourcex1 = [1, 2, 3, 4, 5]y1 = [4, 5, 5, 7, 3]x2 = [2, 3, 4, 5, 6]y2 = [2, 4, 6, 8, 4]source = ColumnDataSource(data=dict(x1=x1, y1=y1, x2=x2, y2=y2))p1 = figure(title="Scatter Plot 1")p1.circle('x1', 'y1', source=source)p2 = figure(title="Scatter Plot 2 Python Bokeh Example by PratikPathak.com")p2.circle('x2', 'y2', source=source)output_notebook()show(p1, p2)
Enter fullscreen modeExit fullscreen mode

8.Hover Tooltips

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models import HoverToolx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="Hover Tooltips Python Bokeh Example by PratikPathak.com")p.circle(x, y, size=15, fill_color="navy", line_color="white", alpha=0.5)hover = HoverTool(tooltips=[("(x,y)", "(@x, @y)")])p.add_tools(hover)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

9.Annotations

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models import Arrow, VectorRenderer, Labelx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="Annotations Python Bokeh Example by PratikPathak.com")p.circle(x, y, size=15, fill_color="navy", line_color="white", alpha=0.5)arrow = Arrow(x_start=2, y_start=4, x_end=3, y_end=5, line_width=2, line_color="red")label = Label(x=3, y=6, text="This is a label", render_mode='css', border_line_color='black', border_line_alpha=1.0, background_fill_color='white', background_fill_alpha=0.5)p.add_layout(arrow)p.add_layout(label)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

10.Custom Glyphs

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models.glyphs import Asteriskx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="Custom Glyphs Python Bokeh Example by PratikPathak.com")p.add_glyph(x, y, Asterisk(size=20, line_color="red", fill_color="yellow"))output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

Live Preview |Source Code |🌿 Contribute

11.Gridlines and Axes

from bokeh.plotting import figure, show, output_notebookx = [1, 2, 3, 4, 5]y = [4, 5, 5, 7, 3]p = figure(title="Gridlines and Axes Python Bokeh Example by PratikPathak.com", x_range=(0, 6), y_range=(0, 8))p.grid.grid_line_color = "grey"p.grid.grid_line_dash = [6, 4]p.xaxis.axis_label = "X-axis"p.yaxis.axis_label = "Y-axis"p.line(x, y, line_width=2)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

12.Legend

from bokeh.plotting import figure, show, output_notebookx1 = [1, 2, 3, 4, 5]y1 = [4, 5, 5, 7, 3]x2 = [2, 3, 4, 5, 6]y2 = [2, 4, 6, 8, 4]p = figure(title="Legend Python Bokeh Example by PratikPathak.com")p.line(x1, y1, line_width=2, color="red", legend_label="Line 1")p.line(x2, y2, line_width=2, color="blue", legend_label="Line 2")p.legend.location = "top_left"output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

13.Categorical Plots

from bokeh.plotting import figure, show, output_notebookfruits = ["Apples", "Pears", "Nectarines", "Plums", "Grapes", "Strawberries"]counts = [5, 3, 4, 2, 4, 6]p = figure(x_range=fruits, title="Categorical Plots Python Bokeh Example by PratikPathak.com")p.vbar(x=fruits, top=counts, width=0.9)p.xaxis.axis_label = "Fruit"p.yaxis.axis_label = "Count"p.xaxis.axis_label_text_font_size = "12pt"p.yaxis.axis_label_text_font_size = "12pt"output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

14.Subplots

from bokeh.plotting import figure, show, output_notebookfrom bokeh.layouts import gridplotx1 = [1, 2, 3, 4, 5]y1 = [4, 5, 5, 7, 3]x2 = [2, 3, 4, 5, 6]y2 = [2, 4, 6, 8, 4]p1 = figure(title="Scatter Plot 1 Python Bokeh Example by PratikPathak.com")p1.circle(x1, y1, size=10, color="navy", alpha=0.5)p2 = figure(title="Scatter Plot 2 Python Bokeh Example by PratikPathak.com")p2.circle(x2, y2, size=10, color="red", alpha=0.5)grid = gridplot([[p1, p2]], plot_width=400, plot_height=400)output_notebook()show(grid)
Enter fullscreen modeExit fullscreen mode

15.Interactive Plots

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models import ColumnDataSource, HoverTool, BoxSelectToolimport numpy as npx = np.random.random(1000)y = np.random.random(1000)source = ColumnDataSource(data=dict(x=x, y=y))p = figure(title="Interactive Plots Python Bokeh Example by PratikPathak.com", tools="hover,box_select")p.circle('x', 'y', source=source, size=3, color="navy", alpha=0.5)hover = HoverTool(tooltips=[("(x,y)", "(@x, @y)")])p.add_tools(hover)output_notebook()show(p)
Enter fullscreen modeExit fullscreen mode

Live Preview |Source Code |🌿 Contribute

16.Linked Panning and Zooming

from bokeh.plotting import figure, show, output_notebookfrom bokeh.models import Range1dx1 = [1, 2, 3, 4, 5]y1 = [4, 5, 5, 7, 3]x2 = [2, 3, 4, 5, 6]y2 = [2, 4, 6, 8, 4]p1 = figure(title="Scatter Plot 1 Python Bokeh Example by PratikPathak.com", x_range=Range1d(0, 6), y_range=Range1d(0, 8))p1.circle(x1, y1, size=10, color="navy", alpha=0.5)p2 = figure(title="Scatter Plot 2 Python Bokeh Example by PratikPathak.com", x_range=p1.x_range, y_range=p1.y_range)p2.circle(x2, y2, size=10, color="red", alpha=0.5)output_notebook()show(p1, p2)
Enter fullscreen modeExit fullscreen mode

More Important examples are here at25+ Python Bokeh Example

How to Contribute?

Feel free to open a PR request on our GitHub repo.

Steps to contribute:

  1. Fork the repo
  2. Make changes in the Forked repo and save
  3. Open a Pull Request
  4. That’s it 😄!

🌿 Contribute

Conclusion

In this article I have shared you 25+ Python Bokeh examples which can help you to learn python bokeh. Feel free to contribute to our github repo and keep it updated.

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Pratik Pathak is a highly accomplished technology professional with a passion for sharing his knowledge and expertise with others. As a Microsoft Certified Trainer, Pratik is dedicated to helping indi
  • Location
    Mumbai, India
  • Joined

More fromPratik Pathak

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp