plotnine可视化绘图(一)---plot creation

概述

最近在学习用python绘图,由于我之前一直在用R绘图,因此最近需要使用python绘图,经过一番查阅准备用plotnine绘图。

plotnine的特别之处在于,它跟R语言的ggplot2风格一样,除了一些语法上的细小差别,因此习惯用R的可以快速上手。

我个人感觉学习绘图的一个方式就是看大量的例子,明白各种参数的用法。

官方文档(可以看方法定义):

https://plotnine.readthedocs.io/en/stable/index.html

安装

pip install plotnine

语法

1. 基础语法

ggplot 创建ggplot
aes 指定x,y 
watermark 水印
layer 通过geom stats添加图层
save_as_pdf_pages 可以将多个ggplot保存成pdf,每个图占一页

2. aes的一些用法

reorder(x,y):根据y值对x值进行排序

df = pd.DataFrame({
    'x': ['b', 'd', 'c', 'a'],
    'y': [1, 2, 3, 4]
})

ggplot(df, aes('reorder(x, y)', 'y')) + geom_col()

plotnine可视化绘图(一)---plot creation_第1张图片

factor(x):

使用R语言的应该对这个很熟悉,可以理解为将x的值认为是一个类别,多用在color,group参数

plotnine可视化绘图(一)---plot creation_第2张图片

ggplot(mtcars, aes(x='factor(cyl)')) + geom_bar()

plotnine可视化绘图(一)---plot creation_第3张图片

 3. save_as_pdf_pages

通过theme(figure_size(width,height))指定pdf每一页的宽高

df = pd.DataFrame({
    'x': ['b', 'd', 'c', 'a'],
    'y': [1, 2, 3, 4]
})

base_plot = ggplot(mtcars, aes(x='factor(cyl)'))+ geom_bar()+theme(figure_size=(8,6))

plots = [base_plot + ggtitle('%d of 3' % i) for i in range(1, 3)]
save_as_pdf_pages(plots,filename='tmp.pdf')

 

你可能感兴趣的:(python)