- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章浅谈哪个Python库才最适合做数据可视化由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
数据可视化是任何探索性数据分析或报告的关键步骤,它可以让我们一眼就能洞察数据集。目前有许多非常好的商业智能工具,比如Tableau、googledatastudio和PowerBI,它们可以让我们轻松地创建图形.
然而,数据分析师或数据科学家还是习惯使用 Python 在 Jupyter notebook 上创建可视化效果。目前最流行的用于数据可视化的 Python 库:Matplotlib、Seaborn、plotlyexpress和Altair。每个可视化库都有自己的特点,没有完美的可视化库,我们应该知道每种数据可视化的优缺点,找到适合自己的才是关键.
首先,让我们导入所有重要的库。很可能你的计算机上已经安装了 Matplotlib 和 Seaborn 。但是,你可能没有Plotly Express 和 Altair。现在可以使用 pip install plotly==4.14.3和pip install altair 数据集轻松安装它们.
import pandas as pdimport matplotlib.pyplot as plt%matplotlib inlineimport altair as altimport plotly.express as px
现在我们将导入数据集。出于演示的目的,我们只创建一个数据框架,其中包含美国人口最多的15个城市。我还将修正城市名称的大写。当我们创建可视化效果时,它将促进编辑过程.
df = pd.read_csv("worldcitiespop.csv")us = df[df["Country"] == "us"]us["City"] = us["City"].str.title()cities = us[["City", "Population"]].nlargest(15, ["Population"], keep="first")
现在我们应该准备好分析每个库。你准备好了吗?
获胜者:Plotly Express 失败者:Matplotlib、Altair和Seaborn 。
在这一类中,所有的库都表现良好。它们都很容易设置,基本编辑的结果对大多数分析都足够好,但我们需要有赢家和输家,对吗?
Matplotlib 很容易设置和记住代码。然而,这个图表看起来并不好。它可能会完成数据分析的工作,但在商务会议上的结果并不理想.
Seaborn 创造了一个更好的图表。它会自动添加 x 轴和 y 轴标签。x 记号看起来更好,但对于基本图表来说,这比 Matplotlib 要好得多.
Plotly Expres,表现得非常出色。可以用很少的代码创建一个好看的、专业的条形图。不需要设置图形或字体大小。它甚至可以旋转 x 轴标签。所有这些都只需要一行代码。非常令人印象深刻! 。
Altair 图表表现良好。它提供了一个好看的图形,但它需要更多的代码,它按字母顺序,这并不可怕,而且在很多情况下都会有帮助,但我觉得这应该是用户应该决定的.
优胜者:Plotly Express、Seaborn、Matplotlib 失败者:Altair 。
我相信这四个库都有可能成为赢家。自定义图表在每一个上的表现却是不同的,但我认为,如果你学习足够,你会学会如何创造美丽的可视化。然而,我正在考虑如何容易地编辑和自定义,把自己想象成一个新用户.
Matplotlib 和 Seaborn 非常容易定制,而且它们的文档非常棒。即使你没有在他们的文档中找到要查找的信息,你也很容易在 Stack Overflow 中找到它。他们还有合作的优势。Seaborn 基于 Matplotlib。因此,如果你知道如何编辑一个,你就会知道如何编辑另一个,这是非常方便的。如果你使用 。
sns.set_style("darkgrid")
设置 Seaborn 主题,它将影响 Matplotlib,这可能就是为什么 Matplotlib 和 Seaborn 是两个更流行的数据可视化库.
plotly express 从一开始就提供了漂亮的图表,例如,与Matplotlib相比,只需要较少的编辑就可以获得非常不错的可视化效果。它的文档很容易理解,他们通过Shift+Tab提供文档,这非常方便。在我尝试的所有库中,它还提供了最多的定制选项。你可以编辑任何东西,包括字体,标签颜色等,最好的部分是它的毫不费力。它的文档中充满了例子.
我发现 Altair 的文件非常混乱。与其他库不同,Altair没有Shift+Tab快捷键。对于初学者来说,这是非常有问题和困惑的。我能够做一些编辑,但找到有关它的信息是有压力的。在编辑方面与我花在 Matplotlib 和 plotly express 上的时间相比,对于初学者来说,Altair 并不是一个很好的选择.
获奖者:Plotly Express 和 Altair 失败者:Matplolib 和 Seaborn 。
对于这一类,我将考虑除了那些我们可以通过代码实现的功能之外的其他功能。Matplotlib 和 Seaborn 在这一类中是非常基本的。除了代码之外,它们不提供任何额外的编辑或交互选项。然而,Plotly Express 在这一类中大放异彩。首先,图表是互动的。您只需将鼠标悬停在图形上,就可以看到有关它的信息.
Altair 提供了一些选项来保存文件或通过Vega编辑器打开JSON文件.
获奖者:Plotly Express、Altair、Seaborn、Matplotlib 。
所有这些库的文档都很好。Plotly Express 有一个漂亮的网站,带有代码和可视化演示。很容易阅读和找到有关它的信息。我喜欢他们的网站是多么的精致和精心设计,你甚至可以与图表互动.
Altair 的网站上做得很好。他们的定制文档不是最好的,但是网站看起来不错,很容易找到代码示例。我不会说这是惊人的,但它确实起到了作用.
Seaborn 的网站还可以。有人说他们有最好的文件,包含代码示例。如果你正在寻找定制选项,它可能会变得很棘手,但除此之外,它是一个干净的网站,其文档也相当完整.
Matplotlib有一个完整的网站。在我看来,它有太多的文字,找到一些信息可能有点棘手。然而,信息就在那里。他们还提供PDF格式的文档.
我在本文中分析的四个目前都非常棒的库。所有的可视化库都有优缺点,找好合适自己的才是关键。我最喜欢的是 Plotly Express ,因为它在所有类别中都表现出色。不过,Matplotlib 和 Seaborn 更受欢迎,大多数人都会在电脑上安装它们。Altair 是我最不喜欢之间。你最喜欢的数据可视化库是什么呢?
到此这篇关于浅谈哪个Python库才最适合做数据可视化的文章就介绍到这了,更多相关Python 数据可视化内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。
原文链接:https://blog.csdn.net/weixin_38037405/article/details/118271507 。
最后此篇关于浅谈哪个Python库才最适合做数据可视化的文章就讲到这里了,如果你想了解更多关于浅谈哪个Python库才最适合做数据可视化的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
服务架构进化论 原始分布式时代 一直以来,我可能和大多数的人认知一样,认为我们的服务架构的源头是单体架构,其实不然,早在单体系
序列化和反序列化相信大家都经常听到,也都会用, 然而有些人可能不知道:.net为什么要有这个东西以及.net frameword如何为我们实现这样的机制, 在这里我也是简单谈谈我对序列化和反序列化的
内容,是网站的核心所在。要打造一个受用户和搜索引擎关注的网站,就必须从网站本身的内容抓起。在时下这个网络信息高速发展的时代,许多低质量的信息也在不断地充斥着整个网络,而搜索引擎对一些高质量的内容
从第一台计算机问世到现在计算机硬件技术已经有了很大的发展。不管是现在个人使用的PC还是公司使用的服务器。双核,四核,八核的CPU已经非常常见。这样我们可以将我们程序分摊到多个计算机CPU中去计算,在
基本概念: 浅拷贝:指对象的字段被拷贝,而字段引用的对象不会被拷贝,拷贝对象和原对象仅仅是引用名称有所不同,但是它们共用一份实体。对任何一个对象的改变,都会影响到另外一个对象。大部分的引用类型,实
.NET将原来独立的API和SDK合并到一个框架中,这对于程序开发人员非常有利。它将CryptoAPI改编进.NET的System.Security.Cryptography名字空间,使密码服务摆脱
文件与文件流的区别(自己的话): 在软件开发过程中,我们常常把文件的 “读写操作” ,与 “创造、移动、复制、删除操作” 区分开来
1. 前言 单元测试一直都是"好处大家都知道很多,但是因为种种原因没有实施起来"的一个老大难问题。具体是否应该落地单元测试,以及落地的程度, 每个项目都有自己的情况。 本篇为
事件处理 1、事件源:任何一个HTML元素(节点),body、div、button 2、事件:你的操作 &
1、什么是反射? 反射 (Reflection) 是 Java 的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性。 Oracle 官方对
1、源码展示 ? 1
Java 通过JDBC获得连接以后,得到一个Connection 对象,可以从这个对象获得有关数据库管理系统的各种信息,包括数据库中的各个表,表中的各个列,数据类型,触发器,存储过程等各方面的信息。
可能大家谈到反射面部肌肉都开始抽搐了吧!因为在托管语言里面,最臭名昭著的就是反射!它的性能实在是太低了,甚至在很多时候让我们无法忍受。不过不用那么纠结了,老陈今天就来分享一下如何来优化反射!&nbs
1. 前言 最近一段时间一直在研究windows 驱动开发,简单聊聊。 对比 linux,windows 驱动无论是市面上的书籍,视频还是社区,博文以及号主,写的人很少,导
问题:ifndef/define/endif”主要目的是防止头文件的重复包含和编译 ========================================================
不知不觉.Net Core已经推出到3.1了,大多数以.Net为技术栈的公司也开始逐步的切换到了Core,从业也快3年多了,一直坚持着.不管环境
以前面试的时候经常会碰到这样的问题.,叫你写一下ArrayList.LinkedList.Vector三者之间的区别与联系:原先一直搞不明白,不知道这三者之间到底有什么区别?哎,惭愧,基础太差啊,木
目录 @RequestParam(required = true)的误区 先说结论 参数总结 @RequestParam(r
目录 FTP、FTPS 与 SFTP 简介 FTP FTPS SFTP FTP 软件的主动模式和被动模式的区别
1、Visitor Pattern 访问者模式是一种行为模式,允许任意的分离的访问者能够在管理者控制下访问所管理的元素。访问者不能改变对象的定义(但这并不是强制性的,你可以约定为允许改变)。对管
我是一名优秀的程序员,十分优秀!