Python grammar of graphics

import pandas as pd

mpg = pd.read_csv("./data/mpg.csv")

mpg.head()

mpg

cylinders

displacement

horsepower

weight

acceleration

model_year

origin

name

0

18.0

8

307.0

130

3504

12.0

70

1

chevrolet chevelle malibu

1

15.0

8

350.0

165

3693

11.5

70

1

buick skylark 320

2

18.0

8

318.0

150

3436

11.0

70

1

plymouth satellite

3

16.0

8

304.0

150

3433

12.0

70

1

amc rebel sst

4

17.0

8

302.0

140

3449

10.5

70

1

ford torino

from plotnine import *
from plotnine.data import *

ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy")) + theme_classic()

<ggplot: (324084173)>
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy", color="class")) + theme_classic()

<ggplot: (324192241)>
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy", size="class")) + theme_classic()

<ggplot: (324188691)>
# Left
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy", alpha="manufacturer")) + theme_classic()

<ggplot: (324284401)>
# Right
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy", shape="manufacturer")) + theme_classic()

<ggplot: (324342522)>
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy"), color="blue") + theme_classic()

<ggplot: (324407845)>
ggplot(data=mpg) +\
geom_smooth(mapping=aes(x="displ", y="hwy")) + theme_classic()

<ggplot: (324408381)>
ggplot(data=mpg) +\
geom_smooth(mapping=aes(x="displ", y="hwy", linetype="drv")) + theme_classic()

<ggplot: (324443965)>
ggplot(data=mpg) +\
geom_point(mapping=aes(x="displ", y="hwy")) +\
geom_smooth(mapping=aes(x="displ", y="hwy")) + theme_classic()

<ggplot: (324525996)>
ggplot(data=mpg, mapping=aes(x="displ", y="hwy")) +\
geom_point(mapping=aes(color="class")) +\
geom_smooth() + theme_classic()

<ggplot: (324562484)>