from plotnine import (
ggplot,
aes,
theme_matplotlib,
theme_set,
geom_tile,
scale_fill_continuous,
coord_cartesian
)
from plotnine.data import faithfuld
# Set default theme for all the plots
theme_set(theme_matplotlib())
Simple heatmap
In [1]:
Map data to color gradient
Without specifically calling scale_fill_continuous()
, a default scale is applied to geom_tile()
.
In [2]:
faithfuld.head()
eruptions | waiting | density | |
---|---|---|---|
0 | 1.600000 | 43.0 | 0.003216 |
1 | 1.647297 | 43.0 | 0.003835 |
2 | 1.694595 | 43.0 | 0.004436 |
3 | 1.741892 | 43.0 | 0.004978 |
4 | 1.789189 | 43.0 | 0.005424 |
In [3]:
("waiting", "eruptions", fill="density"))
ggplot(faithfuld, aes(+ geom_tile()
)
Notice that adding scale_fill_continuous()
will not change the default plot.
In [4]:
("waiting", "eruptions", fill="density"))
ggplot(faithfuld, aes(+ geom_tile()
+ scale_fill_continuous()
)
The scale aesthetics can be edited to other color maps. Use the cmap_name
argument to specify an alternative palette. Find other available color maps in the matplotlib documentation.
In [5]:
# Gallery, tiles
("waiting", "eruptions", fill="density"))
ggplot(faithfuld, aes(+ geom_tile()
+ scale_fill_continuous(cmap_name="plasma")
+ coord_cartesian(expand=False)
)