Scatter plots#
Scatter markers#
Bokeh includes a large variety of markers for creating scatter plots. For
example, to render circle scatter markers on a plot, use the circle()
method of figure()
:
from bokeh.plotting import figure, show
p = figure(width=400, height=400)
# add a scatter circle renderer with a size, color, and alpha
p.scatter([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], size=20, color="navy", alpha=0.5)
# show the results
show(p)
Similarly, use the square()
method of figure()
to
scatter square markers on a plot:
from bokeh.plotting import figure, show
p = figure(width=400, height=400)
# add a square scatter renderer with a size, color, and alpha
p.scatter([1, 2, 3, 4, 5], [6, 7, 2, 4, 5], marker="square",
size=20, color="olive", alpha=0.5)
# show the results
show(p)
Bokeh’s built-in scatter markers consist of a set of base markers, most of which can be combined with different kinds of additional visual features. This is an overview of all available scatter markers:
To see details and example plots for any of the available scatter markers, click on the corresponding glyph method in the following list:
All the markers have the same set of properties: x
, y
, size
(in
screen units), and angle
(in radians by default). The circle()
marker is
an exception: this method accepts an additional radius
property that you can
use with data units.
Image URLs#
It is also possible to make scatter plots using arbitrary images for markers
using the image_url()
glyph method. The example below demonstrates using a
single image, but it is possible to pass a column of different URLs for every
point.
Note
The URLs must be accessible by HTTP or HTTPS. For security reasons,
browsers will not allow loading local (file://
) images into HTML
canvas elements. For similar reasons, if the page is HTTPS, then the
URLs for the images must also be HTTPS.