哪些 Python 库让你相见恨晚?

未分类 SenLin 1年前 (2022-11-10) 282次浏览 已收录

最近程沉迷于github,无法自拔,看到各种各样新奇又实用的第三方库。网络上有很多python库的排名、汇总,但总觉得不够具体生动。

我希望能在这里持续更新我喜欢的第三方可视化库,力求详实丰富。专栏里收集了github上更多有趣的python项目,喜欢就关注下哦!

github上的好东西确实多,之前也有项目整理过。


介绍的大体流程是:库名、类型、github star、功能、使用方法、案例、学习资料。

第一部分:数据可视化

pyecharts

类型:可视化图表设计

GitHub Star :5985

功能:

  1. 简洁的 API 设计,使用如丝滑般流畅,支持链式调用
  2. 囊括了 30+ 种常见图表,应有尽有
  3. 支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab
  4. 可轻松集成至 Flask,Django 等主流 Web 框架
  5. 高度灵活的配置项,可轻松搭配出精美的图表
  6. 详细的文档和示例,帮助开发者更快的上手项目
  7. 多达 400+ 地图文件以及原生的百度地图,为地理数据可视化提供强有力的支持

使用方法:

from pyecharts.charts import Bar

bar = Bar()
bar.add_xaxis(["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"])
bar.add_yaxis("商家A", [5, 20, 36, 10, 75, 90])
# render 会生成本地 HTML 文件,默认会在当前目录生成 render.html 文件
# 也可以传入路径参数,如 bar.render("mycharts.html")
bar.render()

案例:



学习资料:

A Python Echarts Plotting Library

Superset

类型:开源的 企业级 轻量BI工具

GitHub star :24937

功能:

  1. 创建和分享可视化面板
  2. 有丰富的可视化方法来分析数据,且具有灵活的扩展能力
  3. 具有可扩展的、高粒度的安全模型,可以用复杂规则来控制访问权限。目前支持主要的认证提供商:DB、OpenID、LDAP、OAuth、和Flask AppBuiler的REMOTE_USER
  4. 使用简单的语法,就可以控制数据在UI中的展现方式
  5. 与Druid深度结合,可快速的分析大数据
  6. 配置缓存来快速加载仪表盘
  7. Superset最初是在Druid.io的基础上设计的,但是通过使用SQLAlchemy(一种与大多数常见数据库兼容的Python ORM),迅速扩展了范围以支持其他数据库。

使用方法:

安装好后,启动浏览器端,添加数据源,搭建可视化面板,分享,导出

1、安装:教程1、教程2

2、使用:官方教程、github、简单使用教程

案例:

查看仪表板


数据切片和切块


使用SQL Lab查询和可视化数据


可视化地理空间数据


从各种可视化中进行选择


学习资源:官方文档

顺便提下,这些库的使用都需要有python基础

大家可以针对性地在官方文档里学习python知识,不仅节省时间,而且你会发现更容易理解,因为你是带着问题去学习的。

如果想少走弯路,不妨看看一些视频课程。自制力比较差的小伙伴,跟着老师把python基础走一遍,效率非常高。

现在市面上好多新出现的python课程,甚至原来做英语的也开始出python产品了,比如百词斩的夜曲编程。我觉得这其实是件好事,说明学Python的人越来越多,大家的选择更多元了。

夜曲编程更多面向纯小白,通过图文的形式将编程语法形象化,增加了很多互动学习的机制,比如卡片、闯关、隐喻、奖励等,你在手机、电脑、Pad端都可以学习,不受设备限制。


而且夜曲里面的课程设置,基本是以实操训练为主,有基础语法、数据分析、爬虫、自动办公等等,还比较符合实用的需求。这有点类似国外的datacamp,实践性很强。

我仔细看了里面一个Python入门课Pro,好像是有30天基础语法课,加上编程案例实战,同时还有百题斩最擅长的100题闯关。在学习过程中,还可以通过社群提问进行问题答疑,有专门的老师在群里。


如果你是纯小白,那可以试试夜曲的Python基础体验课程,总共6节,还有7天社群共学+助教答疑服务,和13道百题斩练习(代码实操练习题),学习完一般可以入门了。

现在都流行非IDE编程,夜曲的网站和app内嵌了代码编辑器,可以直接在网页或手机上敲代码并运行,对小白很友好,当然我还是建议大家有能力自己装IDE写代码。

大家可以去试试看,对照的语法书来学,应该很快可以入门。

plotly

类型:非常著名且强大的交互式开源数据可视化框架

GitHub star :5235

功能:

  1. 交互式开源可视化框架,支持超过40种独特图表类型,涵盖统计、财务、地理、学术、三维等。
  2. 建立在Javascript plotly库基础上,能使python用户创建基于web的可交互的可视化作品,其能在jupyter notebook上展示,而且可以导出为HTML。
  3. plotly还可以在非web编辑器上(如pycharm、spyder)绘制图表
  4. 能导出出版级别的图片

使用方法:

import plotly.express as px
iris = px.data.iris()
fig = px.scatter(iris, x="sepal_width", y="sepal_length")
fig.show()

案例:




学习资源:官方文档

Bokeh

类型:服务于浏览器的炫酷的交互式可视化库

GitHub star :11061

功能:

  • 专门针对Web浏览器的交互式、可视化Python绘图库
  • 提供优雅简洁的多功能可视化展示,能快速创建图表、仪表板和可视化应用
  • 可以做出像D3.js简洁漂亮的交互可视化效果,但是使用难度低于D3.js。
  • 独立的HTML文档或服务端程序
  • 可以处理大量、动态或数据流
  • 支持Python (或Scala, R, Julia…)
  • 不需要使用Javascript

使用方法:

from bokeh.plotting import figure, output_file, show
# 创建图表
p = figure(plot_width=300, plot_height=300, tools="pan,reset,save")
# 图表中添加圆
p.circle([1, 2.5, 3, 2], [2, 3, 1, 1.5], radius=0.3, alpha=0.5)
# 定义输出形式
output_file("foo.html")
# 展示图表
show(p)

案例:




学习资源:官方文档

Python里很多可视化都是基于matplotlib开发的,所以学习matplotlib的绘图框架很重要,大家要多看看。

之前在github上看到matplotlib的速查表,感觉很方便,分享出来。



Github主页地址:github.com/matplotlib/c

如果Github比较慢,我下载好了PDF和高清图片版,大家可以去下载看

一直在创作python&数据内容,从未停止哈哈,觉得不错点个关注 朱卫军 ~

未完待续!欢迎点赞收藏转发


top8488大数据 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:哪些 Python 库让你相见恨晚?
喜欢 (0)
[]
分享 (0)