文丨Chris Moffitt

编译丨姜瑞琪

触脉咨询数据分析师

用过python的人都会面临一个问题,尤其是初学者:我应该选哪个来实现数据可视化?

面对众多的选项,要弄清楚什么时候使用哪个的问题没那么容易。

这就是今天分享这篇文章的初衷,通过列举一些使用频率较高的工具,以及使用它们创建简单的条形图的方法,帮助各位进行简单的梳理。

以下就是将要用来创建绘制数据的示例:

·Pandas

·Seaborn

·Ggplot

在示例中,我将使用pandas进行数据处理并使用它来完成可视化的效果。其实,在大多数情况下,可视化工具可以在没有pandas的情况下使用,但pandas+可视化工具的组合很常见,这是一个很好的起始点。

pandas

我通常会用pandas DataFrame开始制作各种绘图的工作。这样有一个优势,就是pandas提供内置的绘图功能,它是matplotlib之上的一层。

首先,导入我们的模块并将数据放入DataFrame中,此外,还将对数据进行排序并让其限制在前10行中。

所有的示例中使用的预算行都相同,以下是导入DataFrame后前5个项目的样子:

我们可以手动设置外观并创建一个条形图:

如果想保存生成的图像,则需要以下的代码:

制作成功后会如下所示:

如果想对Y轴进行更多格式化,则需要一些matplotlib的操作,而不能仅仅通过pandas来实现。

Seaborn

Seaborn是基于matplotlib的可视化库,它能让数据可视化在视觉上更具有吸引力,并且能够很好的与pandas一起使用。

我喜欢用Seaborn的一点就在于它能够快速更改调色板以使其外观更好看。

标准导入并读取数据:

在使用的时候,我发现一件事情就是必须使用x_order明确设置x_axis上项目的顺序。

对这节代码设置顺序,并设置绘图和条形图颜色的样式:

示例中,我们使用matplotlib旋转x轴标题,以便在实际场景中可以阅读。视觉上,显示看起来不错。理想情况下,可以使用matplotlib中的plt.yticks在y轴上设置刻度线的格式。

ggplot

ggplot与Seaborn相似,都是建立在matplotlib之上,并以一种简单的方式优化提升matplotlib可视化的视觉吸引力。但有一点与seaborn不同,它是R的ggplot2端口,因此,某些API是非Python的,但功能非常强大。

继续导入并读取我们的数据:

现在,我们可以通过将几个ggplot命令连接在一起来构建绘图:

通过使用print p可以显示图形。

实操中,确实需要花一些时间才能弄清楚如何将文本旋转90度,以及如何在x轴上排列标签。

我发现scale_y_continous是一个很酷的功能,它能使标签的使用变得更简单。

如果要保存图像,可以使用ggsave轻松进行:

最终生成的图像。

总结:

使用Python绘制数据图表时,选择太多是好事儿也是坏事儿。这意味着我们需要根据要完成的工作找出适合的方法,去确定这些工具能否有用。

这没办法给出一个明确的定义,以此为基准进行选择。以下是我总结的一些想法:

·pandas对于简单的绘制图表很方便,但通常需要搭配matplotlib进行使用。

·seaborn可以支持复杂的可视化方法,在配色方案上也有一定优势。但是,仍需要用matplotlib进行调整。

·ggplot仍然在不断优化。

希望对各位有所帮助~

原文链接:https://pbpython.com/visualization-tools-1.html,有所删减及修改

利用python数据可视化_想用Python做数据可视化?先迈过这个“坎”相关推荐

  1. 适合学python的笔记本_想自学python,应该买什么牌子的笔记本?

    写代码,我建议还是用 Mac 吧. 几个原因:macOS 作为 Mac 的操作系统,使用流畅.稳定,熟悉之后爱不释手.我几乎不关机,随时跑代码,系统几乎不会变慢. Mac 搭建编程环境方便.我本人用 ...

  2. 什么是数据治理?企业为什么要做数据治理?

    什么是数据治理?企业为什么要做数据治理? 数据治理是用做建立有效管理企业数据的战略.目标和策略的组织框架.它由管理和确保数据的可获得性.可用性.完整性.一致性.可审计性和安全性所需的流程.策略.组织和 ...

  3. python实现数据可视化_使用Matplotib python实现数据可视化

    python实现数据可视化 I Feel: 我觉得: In today's digital world data has become as important as air. Machines &a ...

  4. python基于web可视化_独家 | 基于Python实现交互式数据可视化的工具(用于Web)

    转自:数据派ID:datapi 作者:Alark Joshi 翻译:陈雨琳 校对:吴金笛 本文2200字,建议阅读8分钟. 本文将介绍实现数据可视化的软件包. 这学期(2018学年春季学期)我教授了一 ...

  5. pythonweb数据可视化_独家 | 基于Python实现交互式数据可视化的工具(用于Web)

    翻译:陈雨琳 校对:吴金笛 本文2200字,建议阅读8分钟. 本文将介绍实现数据可视化的软件包. 这学期(2018学年春季学期)我教授了一门关于数据可视化的数据科学硕士课程.我们的数据科学硕士项目是一 ...

  6. python四维数据可视化_如何使用python进行数据可视化?

    使用包matplotlib包 导入语句: import matplotlib.pyplot as plt 散点图 折线图 帮助: 颜色线型点 一张画板绘制多张图 添加文本: 找到配置文件: 如何使用p ...

  7. python怎么用大数据分析师_如何七周成为数据分析师18:Python的新手教程

    本文是<怎样 七周成为数据剖析 师>的第十八篇教程,假定 想要了解 写作初衷,能够 先行阅读七周指南.温馨提示:假定 您曾经 熟习 Python,大可不用 再看这篇文章,或只选择 部分 . ...

  8. python构造icmp数据包_如何在python中构造ICMP数据包

    为了学习,我目前正在尝试创建一个简单的python porgram来向某个设备发送ICMP ping数据包.为了开始,我查看了python模块Pyping:https://github.com/Akh ...

  9. 编程python爬取网页数据教程_实例讲解Python爬取网页数据

    一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...

最新文章

  1. hadoop 启动提示输入password的问题
  2. Linux:常用命令大全
  3. properties文件读取内容
  4. python人脸实时检测_openCV+python实现人脸实时检测
  5. ubuntu修改root密码
  6. Combobox报错:row[opts.textField].toLowerCase is not a function。
  7. python tkinter库函数详解_Python使用tkinter库进行GUI编程中常用事件处理方式汇总
  8. python中不同类型的数据不能相互运算_python语法入门(数据类型、运算)
  9. php初级程序员的自我评价,程序员的自我评价【程序员的简历自我评价】
  10. [内附完整源码和文档] 基于VS2013实现的弹弹堂小游戏
  11. 通过exchangelib库连接到公司exchange邮箱
  12. 病毒性感冒和细菌性感冒怎样区分
  13. import javax.jws 出错
  14. 麒麟信安操作系统:挖掘场景,与云俱进 ——携手openEuler赋能关键行业应用
  15. 找回SecureCRT密码
  16. 抖音电商的带货情况究竟如何,抖音电商带货前景如何
  17. HTML---表格合并(详解)
  18. STM32的串口传输文件和点阵汉字的字模读取与显示
  19. 【JAVA - ArrayList】炸金花的模拟实现流程(买牌,洗牌,发牌)
  20. 大数据之分布式搜索引擎_4.分布式搜索引擎写入和查询的工作流程是什么样的?

热门文章

  1. HDU2018题求母牛数量C++
  2. 1123 Is It a Complete AVL Tree (30 分)【难度: 难 / 平衡树 未完成】
  3. 【AC Saber】数据结构
  4. 高效的判断素数---筛选法
  5. 2.3.2 进程互斥的软件实现方法
  6. MySQL之运算符和函数
  7. 新同事上来就把项目性能优化了一遍,瑟瑟发抖。。。
  8. 如何优雅的设计 Java 异常
  9. java网络编程(一)
  10. 2021-10-11 ! LeetCode226. 翻转二叉树 的前中后层序遍历写法