Python数据可视化之Plotnine库超详细教程系列(一):概述

一、Plotnine库简介

ggplot2包奠定了R语言数据可视化在数据科学中的地位,数据可视化一直是Python的短板,即使有Matplotlib、Seaborn等数据可视化包,也无法与R语言、MATLAB等软件媲美,而plotnine可以说是ggplot2在Python上的移植版,使得Python的数据可视化能力大幅度提升,先陈列出一些用plotnine画出的图。

Plotnine官方文档:https://plotnine.readthedocs.io/en/stable/about-plotnine.html,但由于在Plotnine的官方文档中,开发者并没有给出太详细的教程,并且Python统计学生态仍不完备,笔者特此记录Plotnine的学习过程,并给出一个详细的教程。
‘plotnine一开始是为了改进ggpy中的伸缩功能,它的正式名称是“python的ggplot”。这是一个更大目标的一部分,即把这个包发展成一个支持完整绘图语法的包。事实证明,要想拥有一个图形语法系统,我们必须重新开始。’ ——Plotnine开发者
‘R编程语言有一个丰富的统计生态系统,ggplot2可以轻松地利用它。在plotnine中,我们尽了最大努力与科学python生态系统的其余部分整合在一起。尽管我们觉得我们可以在这个集成上做得更多,但是尽管语言存在差异,熟悉ggplot2的用户应该对使用plotnine感到舒适和高效。’——Plotnine开发者

二、Plotnine库语法简介

plotnine库与Matplotlib、Seaborn等数据可视化包语法不同,是一种颠覆性的图形创建方式,plotnine库包含了以下几种基本要素,在各类绘图中均会用到,后续使用中将不再详细解释,在后续更新中,对于一些新的要素,笔者也会进行详细的讲解。

2.1ggplot()

ggplot()函数是底层绘图函数,通常包括了绘图用到的DataFrame,还可以控制color、size、shape的映射关系。如下面这段代码:

ggplot(df,aes(x='ncc',fill='ddc')

表示的含义是,所用到的数据集是df,x轴选择的变量为‘ncc’,根据‘ddc’的值对图层进行填充,ddc的值不同,填充颜色不同

2.2geom_xxx()

geom_xxx()表示了不同图层,常用到的,geom_point()表示散点图,geom_line()表示线图,geom_histogram()表示直方图,geom_density()表示核密度估计图
geom_xxx()常会用到如下参数:

geom_density(alpha=0.5,colour='black',size=0.25)

在这一行代码中,alpha代表图形的透明度为0.5,color表示图形轮廓用black勾勒,size表示图形的大小为0.25.

2.3基础坐标轴设置

xlab('X')+
ylab('Y')

这段代码表示对x轴命名为X,对y轴命名为Y。

scale_x_continuous(limits=(-3,3))+
scale_y_continuous(limits=(50,100))+

这段代码表示设定x轴与y轴的坐标刻度。
有了这样一些知识,我们就可以简单的绘制两个基本图形了,在后续的更新中,将会详细讲解这些图的绘制方法。


三、加载数据

利用pandas库读取数据,plotnine库绘图是基于pandas库中的数据框,因此我们要用pandas读入数据并将数据存入数据框中

df = pd.read_excel(r'C:\Users\Administrator\Desktop\新建 Microsoft Excel 工作表.xlsx',index_col=0)

数据集展示如下,其中,ncc、puv、ksv、kpm、usr为连续变量,ddc为离散变量,Score为因变量,数据展示如下。在之后的教程中,都会用到下面的数据集,可以将本数据集的截图保存起来,方便后续的学习

Python数据可视化之Plotnine库超详细教程系列相关推荐

  1. Python数据可视化 - 使用Dash库制作杭州数据分析师岗位招聘情况可交互网页报告(附代码下载)

    dash dash不同于flask或者Django,具备少量的前端知识即可制作可视化网页,下图为本人制作的数据分析师岗位招聘情况可视化网页. 文末附网盘下载经过清洗后的数据与可视化网页的代码. 交互 ...

  2. Python数据可视化,Pyecharts库,外圆环内饼图制作

    一.导入需要的库 from pyecharts.charts import Pie import pyecharts.options as opts import pandas as pd 二.导入数 ...

  3. Python数据可视化:pyecharts库绘制K线图

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于菜J学Python ,作者王小王-123 Python爬虫.数据分析.网站开发等案例 ...

  4. Python-Time库超详细教程

    目录 1.time() 2.ctime() 3.gmtime() 4.strftime() 取消格式化 strptime()函数 5.sleep() 人生苦短,我用Python!Python的一个标准 ...

  5. 大数据图书分享-Python数据可视化实战课程

    Python数据可视化实战课程内容以实践出发,全面地介绍了数据可视化流程和Python数据可视化的应用,并详细阐述了使用Python解决企业实际问题的方法. 全书设计思路以应用为导向,让用户明确如何利 ...

  6. Python 数据可视化:Stack Graph 堆叠图,标准化堆叠柱形图,标准化的同时还能反应数据量大小的堆叠图(放入自写库,一行代码搞定复杂细节绘图)

    本文已在公众号 " 数据分析与商业实践 " 首发.关注一下~,更多商业数据分析案例源码等你来撩.后台回复 "堆叠图" ,即可获取本文的案例示范与包含详细注释的源 ...

  7. 超硬核的 Python 数据可视化教程!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:机器学习算法那些事 Python实现可视化的三个步骤: ...

  8. Python数据可视化2018:数据可视化库为什么这么多?

    本文最初发布于Anaconda开发者博客,经原作者授权由InfoQ中文站翻译并分享. 在奥斯汀举行的SciPy 2018年特别会议上,大量开源Python可视化工具的代表分享了他们对Python数据可 ...

  9. python数据可视化第三方库有哪些_数据可视化!看看程序员大佬都推荐的几大Python库...

    数据可视化是数据分析中极为重要的部分,而数据可视化图表(如条形图,散点图,折线图,地理图等)也是非常关键的一环.Python作为数据分析中最流行的编程语言之一,有几个库可以创建精美而复杂的数据可视化, ...

最新文章

  1. Simple Dynamic Strings(SDS)源码解析和使用说明二
  2. 为什么阿里巴巴禁止使用Apache Beanutils进行属性的copy?
  3. 某华为程序员爆料:主动离职,公司竟也给n+1,到手15万,华为真良心!
  4. 线性布局与相对布局的嵌套
  5. CodeFrist基础_迁移更新数据
  6. 200行代码,7个对象——让你了解ASP.NET Core框架的本质[3.x版]
  7. 数字游戏(水博客ing / csp-J T1 / luogu 5660)
  8. 学习笔记二:异步FIFO
  9. 【codeforces 798B】Mike and strings
  10. 网易博客挂了,转一篇以前的文章过来纪念一下吧。。
  11. python%20是什么东西
  12. AI 改写《权力的游戏》结局,和编剧比谁更烂?
  13. [正则表达式] 校验经度和纬度
  14. python面向对象之抽象类
  15. 基于51单片机TLC2543芯片实现AD转换
  16. iOS内存管控实战(上)—原理篇
  17. 应用打包还是测试团队老大难问题?
  18. 5.8 拉普拉斯算子和拉普拉斯矩阵,图拉普拉斯算子推导
  19. Task3 | HLM | 高收入个体更吝啬吗
  20. 齐博x1新用户手工注册接口

热门文章

  1. 【转】MATLAB R2018a for Mac
  2. 运营中 知识付费虚拟资源交易平台带支付主题源码
  3. linux修改mysql临时密码_MySQL8.0修改临时密码
  4. python根目录_每日一练(22)-自己写一个python模块并发布到本机环境
  5. pdf转换成jpg格式的转换方法
  6. Python自动化办公社区 · 资源汇总
  7. 回归分析:预测 VS 因果分析
  8. Numpy中的nan
  9. 初中孩子做作业能用计算机吗,上初一的孩子,每天写作业到11点,最重要的是做作业吗?...
  10. boost双闭环控制仿真升压电路PI调节器设计升压斩波电路建模和数学模型建模