V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fanqieipnet
V2EX  ›  推广

Python 可视化工具哪个好?

  •  
  •   fanqieipnet · 2020-12-09 18:21:35 +08:00 · 728 次点击
    这是一个创建于 1449 天前的主题,其中的信息可能已经有所发展或是发生改变。
    python 可视化工具哪个好?今天番茄加速就来分享 10 个 python 可视化工具。

       1 、matplotlib

       matplotlib 是 Python 可视化程序库的泰斗。经过十几年它任然是 Python 使用者最常用的画图库。它的设计和在 1980 年代被设计的商业化程序语言 MATLAB 非常接近。

      由于 matplotlib 是第一个 Python 可视化程序库,有许多别的程序库都是建立在它的基础上或者直接调用它。

      比如 pandas 和 Seaborn 就是 matplotlib 的外包,它们让你能用更少的代码去调用 matplotlib 的方法。

      虽然用 matplotlib 可以很方便的得到数据的大致信息,但是如果要更快捷简单地制作可供发表的图表就不那么容易了。

      就像 Chris Moffitt 在“Python 可视化工具简介”中提到的一样:“功能非常强大,也非常复杂。”

       matplotlib 那有着强烈九十年代气息的默认作图风格也是被吐槽多年。即将发行的 matplotlib 2.0 号称会包含许多更时尚的风格。

       2 、Seaborn

       Seaborn 利用了 matplotlib,用简洁的代码来制作好看的图表。

       Seaborn 跟 matplotlib 最大的区别就是它的默认绘图风格和色彩搭配都具有现代美感。

      由于 Seaborn 是构建在 matplotlib 的基础上的,你需要了解 matplotlib 从而来调整 Seaborn 的默认参数。

       3 、ggplot

       ggplot 基于 R 的一个作图包 ggplot2, 同时利用了源于 《图像语法》(The Grammar of Graphics)中的概念。

       ggplot 跟 matplotlib 的不同之处是它允许你叠加不同的图层来完成一幅图。比如你可以从轴开始,然后加上点,加上线,趋势线等等。

      虽然《图像语法》得到了“接近思维过程”的作图方法的好评,但是习惯了 matplotlib 的用户可能需要一些时间来适应这个新思维方式。

       ggplot 的作者提到 ggplot 并不适用于制作非常个性化的图像。它为了操作的简洁而牺牲了图像复杂度。

       ggplot 跟 pandas 的整合度非常高,所以当你使用它的时候,最好将你的数据读成 DataFrame 。

       4 、Bokeh

      跟 ggplot 一样,Bokeh 也是基于《图形语法》的概念。

      但是跟 ggplot 不一样的是,它完全基于 Python 而不是从 R 引用过来的。

      它的长处在于它能用于制作可交互,可直接用于网络的图表。图表可以输出为 JSON 对象,HTML 文档或者可交互的网络应用。

       Boken 也支持数据流和实时数据。Bokeh 为不同的用户提供了三种控制水平。

      最高的控制水平用于快速制图,主要用于制作常用图像, 例如柱状图,盒状图,直方图。

      中等控制水平跟 matplotlib 一样允许你控制图像的基本元素(例如分布图中的点)。

      最低的控制水平主要面向开发人员和软件工程师。

      它没有默认值,你得定义图表的每一个元素。

       5 、pygal

       pygal 跟 Bokeh 和 Plotly 一样,提供可直接嵌入网络浏览器的可交互图像。

      跟其他两者的主要区别在于它可以将图表输出为 SVG 格式。

      如果你的数据量相对小,SVG 就够用了。但是如果你有成百上千的数据点,SVG 的渲染过程会变得很慢。

      由于所有的图表都被封装成了方法,而且默认的风格也很漂亮,用几行代码就可以很容易地制作出漂亮的图表。

       6 、Plotly

      你也许听说过在线制图工具 Plotly,但是你知道你可以通过 Python 使用它么?

       Plotly 跟 Bokeh 一样致力于交互图表的制作,但是它提供在别的库中很难找到的几种图表类型,比如等值线图,树形图和三维图表。

       7 、geoplotlib

       geoplotlib 是一个用于制作地图和地理相关数据的工具箱。

      你可以用它来制作多种地图,比如等值区域图, 热度图,点密度图。

      你必须安装 Pyglet (一个面向对象编程接口)来使用 geoplotlib 。不过因为大部分 Python 的可视化工具不提供地图,有一个专职画地图的工具也是挺方便的。

       8 、Gleam

       Gleam 借用了 R 中 Shiny 的灵感。它允许你只利用 Python 程序将你的分析变成可交互的网络应用,你不需要会用 HTML CSS 或者 JaveScript 。

       Gleam 可以使用任何一种 Python 的可视化库。

      当你创建一个图表的时候,你可以在上面加上一个域,这样用户可以用它来对数据排序和过滤了。

       9 、missingno

      缺失数据是永远的痛。

       missingno 用图像的方式让你能够快速评估数据缺失的情况,而不是在数据表里面步履维艰。

      你可以根据数据的完整度对数据进行排序或过滤,或者根据热度图或树状图来考虑对数据进行修正。

       10 、Leather

       Leather 的最佳定义来自它的作者 Christopher Groskopf 。

      “Leather 适用于现在就需要一个图表并且对图表是不是完美并不在乎的人。”

      它可以用于所以的数据类型然后生成 SVG 图像,这样在你调整图像大小的时候就不会损失图像质量。
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3599 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 10:48 · PVG 18:48 · LAX 02:48 · JFK 05:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.