stat_summary_bin()#
import pandas as pd
from lets_plot import *
LetsPlot.setup_html()
df = pd.read_csv("https://raw.githubusercontent.com/JetBrains/lets-plot-docs/master/data/iris.csv")
print(df.shape)
df.head()
(150, 5)
| sepal_length | sepal_width | petal_length | petal_width | species | |
|---|---|---|---|---|---|
| 0 | 5.1 | 3.5 | 1.4 | 0.2 | setosa |
| 1 | 4.9 | 3.0 | 1.4 | 0.2 | setosa |
| 2 | 4.7 | 3.2 | 1.3 | 0.2 | setosa |
| 3 | 4.6 | 3.1 | 1.5 | 0.2 | setosa |
| 4 | 5.0 | 3.6 | 1.4 | 0.2 | setosa |
1. The geom Parameter#
ggplot(df, aes("petal_length", "sepal_length")) + \
stat_summary_bin(geom='crossbar', width=1, binwidth=.5) + \
geom_point(shape=21)
2. fun, fun_min, fun_max Parameters#
ggplot(df, aes("petal_length", "sepal_length")) + \
stat_summary_bin(geom='crossbar', width=1, binwidth=.5, \
fun='mq', fun_min='lq', fun_max='uq') + \
geom_point(shape=21)
3. The quantiles Parameter#
ggplot(df, aes("petal_length", "sepal_length")) + \
stat_summary_bin(geom='crossbar', width=1, binwidth=.5, \
fun='mq', fun_min='lq', fun_max='uq', \
quantiles=[.05, .5, .95]) + \
geom_point(shape=21)
4. center and boundary Parameters#
def get_plot(center=None, boundary=None):
return ggplot(df, aes("petal_length", "sepal_length")) + \
stat_summary_bin(geom='crossbar', width=1, binwidth=.5, \
center=center, boundary=boundary) + \
geom_point(shape=21) + \
ggtitle("center={0}, boundary={1}".format(center, boundary))
gggrid([
get_plot(),
get_plot(center=1),
get_plot(boundary=1),
], ncol=2)