上海中医药大学,引荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌

频道:欧洲联赛 日期: 浏览:295

Plotly Express 入门之路

Plotly Express 是一个新的高档 Python 可视化库:它是 Plotly.py 的高档封装,它为杂乱的图表供给了一个简略的语法。

受 Seaborn 和 ggplot2 的启示,它专门规划为具有简练,共同且易于学习的 API :只需一次导入,您就能够在一个函数调用中创立丰厚的交互式绘图,包含分面绘图(faceting)、地图、动画和趋势线。 它带有数据集、色彩面板和主题,就像 Pg8015lotly.py 相同。

Plotly Express 彻底免费:凭仗其宽松的开源 MIT 许可证,您能够随意运用它(是的,乃至在商业产品中!)。

最重要的是,Plotly Express 与 Plotly 生态系统的其他部分彻底兼容:在您的 Dash运用程序中运用它,运用 Orca 将您的数据导出为简直任何文件格局,或运用JupyterLab 图表修正器在 GUI 中修正它们!

用pip install plotly_express指令能够装置 Plotly Express。

运用 Plotly Express 轻松地进行数据可视化

一旦导入Plotly Express(通常是px),大多数绘图只需求一个函数调用,承受一个整齐的Pandas dataframe,并简略描绘你想要制造的图。 假如你想要一个根本的散点图,它仅仅px.s上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌catter(data,x =“column_name”,y =“column_name”)。

以下是 内置的 Gapminder 数据集 的示例,显现2007年按国家/区域的人均预期寿数和人均GDP 之间的趋势:

import plotly_express as px

gapminder =上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌 px.data.gapminder

gapminder2007 = gapminder.query('year == 2007')

px.scatter(gapminder2007, x='gdpPercap', y='lifeExp')

假如你想经过大陆区别它们,你能够运用color参数为你的点上色,由px担任设置默许色彩,设置图例等:

这儿的每一冲砂暂堵剂点都是一个国家,所以或许咱们想要按国家人口来衡量这些点...... 没问题:这儿也有一个参数来设置,它被称为size:

假如你三国杀妖将猎奇哪个国家对应哪个点? 能够增加一个hover_name,您能够轻松辨认任何一点:只需将鼠标放在您感兴趣的点上即可! 事实上,即便没有hover_name,整个图表也是互动的:

也能够经过facet_col =”continent“来轻松区分各大洲,就像上色点相同简略,而且让咱们运用 x轴 对数(log_x)以便在咱们在图表中看的更明晰:

或许你不只仅对 2007年 感兴趣,而且你想看看这张图表是怎么跟着时刻的推移而演化的。 能够经过设置animation_frame=“year”(以及animation_group =“country”来标识哪些圆与操控条中的年份匹上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌配)来设置动画。

在这个终究版别中,让咱们在这儿调整一些显现,由于像“gdpPercap” 这样的文本有点丑陋,即便它是咱们的数据框列的称号。 咱们能够供给更美丽的“标签” (labels),能够在整个图表、图例、标题轴和悬停(hovers)中运用。 咱们还能够手动设置鸿沟,以便动画在整个进程中看起来更棒:

由于这是地舆数夜狼映拍据,咱们也能够将其标明为动画地图,因而这清楚地标明 Plotly Express 不只仅能够制造散点图(不过这个数据集短少前苏联的数据)。

事实上,Plotly Express 支撑三维散点图、三维线形图、我国四海控股有限公司极坐标中华大排档和地图上三元坐标以及二维坐标。 条形图(Bar)有二维笛卡尔和极坐标风格。

进行可视化时,您能够运用单变量设置中的直方图(histograms)和箱形图(box)或小提琴图(violin plots),或双变量散布的密度等高线图(density contours)。 大多数二维笛卡尔图承受接连或分类数据,并主动处理日期/时刻数据。 能够检查咱们的图库 (ref-3) 来了解每个图表的比如。

上述动态图包含 10多张 图片的可视化,『Python数据之道』已将代码整合到 jupyter notebook 文件中,源代码 https://github.com/liyangbit/PyDataRoad

可视化散布

数据探究的首要部分是了解数据会集值的散布,以及这些散布怎么彼此相关。 Plotly Express 有许多功用来处理这些使命。

运用直方图(his上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌tograms),箱形图(box)或小提琴图(violin plo上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌ts)可视化单变量散布:

直方图:

箱形图:

小提琴图:

还能够创立联合散布图(marginal rugs),运用直方图,箱形图(box)或小提琴来显现双变量散布,也能够增加趋势线。 Plotly Express 乃至能够协助你在悬停框中增加线条公式和R值! 它运用 statsmodels 进行一般最小二乘(OLS)回归或部分加权散点图滑润(LOWESS)。

色彩面板和序列

在上面的一些图中你会注意到一些不错的色标。 在 Plotly Express 中, pbittingx.colors 模块包含许多有用的色标和序列:定性的、序列型的、离散的、循环的以及一切您喜爱的开源包:ColorBrewer、cmocean 和 Carto 。 咱们还供给了一些功用来制造可阅读的样本供您赏识(ref-3):

定性的色彩序列:

许多内置次序色标中的一部分:

用一行 Python 代码进行交互式多维可视化

咱们特别为咱们的交互式多维图表感到骄傲,例如散点图矩阵(SPLOMS)、平行坐标和咱们称之为并行类别的并行集。 经过这些,您能够在单个图中可视化整个数据集以进行数据探究。 在你的Jupyter 笔记本中检查这些单行及其启用的交互:

散点图矩阵(SPLOM)答应您可视化多个链接的散点图:数据会集的每个变量与其他变量的联系。 数据会集的每一行都显现为每个图中的一个点。 你能够进行缩放、平移或挑选操作,你会发现一切图都链接在一起!

平行坐标答应您一起显现3个以上的接连变量。 dataframe 中的每一行都是一行。 您能够拖动尺度以从头排序它们并挑选值规模之间的交叉点。

并行类别是并行坐标的分类模仿:运用它们可视医亨风流化数据会集多组类别之间的科斯莫利基德联系。

Plotly 生态系统的一部分

Plotly Express 之于 Plotly.py 相似 Seaborn 之于 matplotlib:Plotly Express 是一个高档封装库,答应您快速创立图表鬼肖,然后运用底层 API 和生态系统的强壮功用进行修正。 关于Plotly 生态系统,这意味着一旦您运用 Plotly Express 创立了一个图形,您就能够运用Themes,运用 FigureWidgets 进行指令性修正,运用 Orca 将其导出为简直任何文件格局,或许在咱们的 GUI JupyterLab 图表修正器中修正它 。

主题(Themes)答应您操控图形规模的设置,如边距、字体、布景色彩、刻度定位等。 您能够运用模板参数运用任何命名的张小央主题或主题方针:

有三个内置的 Plotly 主题能够运用, 分别是 plotly, plotlywhite 和 plotlydark

px输出承继自 Plotly.py 的Figure类ExpressFigure的方针,这意味着你能够运用任何Figure的拜访器和办法来改动px生成的绘图。 例如,您能够将.update调用链接到px调用以更改图例设置并增加注释。.update现在回来修正后的数字,所以你依然能够在一个很长的 Python 语句中履行此操作:

在这儿,在运用 Plotly Express 生成原始图形之后,咱们运用 Plotly.py 的 API 来更改一些图例设置并增加注释。

能够与 Dash 完美匹配

Dash 是 Plotly 的开源结构,用于构建具有 Plotly.py 图表的剖析运用程序和仪表板。Plotly Express 发生的方针与 Dash 100%兼容,只周思盈需将它们直接传递到dash_core_components.Graph,如下所示:dcc.Graph(figure = px.scatter(...))。 这是一个十分简略的 50行 Dash 运用程序的示例,它运用px生成其间的图表:

这个 50 行的 Dash 运用程序运用 Plotly贝尔吉罗斯 Express 生成用于阅读数据集的 UI 。

规划理念:为什么咱们创立 Plotly Express ?

可视化数据有许多原因:有时您想要供给一些主意或成果,而且您期望对图表的每个方面施加许多操控,有时您期望快速检查两个变量之间的联系。 这是交互与探究的领域。

Plotly.py 现已开展成为一个十分强壮的可视化交互东西:它息旺动力能够让你操控图形的简直每个方面,从图例的方位到刻度的长度。 不幸的是,这种操控的价值是冗长的:有时或许需求多行 Python 代码才干用 Plotly.py 生成图表。

咱们运用 Plotly Express 的首要方针是使 Plotly.py 更简略用于探究和快速迭代。

咱们想要构建一个库,它做出了不同的权衡:在可视化进程的前期献身一些操控措施来交换一个不那么具体的 API,答应你在一行 Python 代码中制造各式各样的图表。 可是,正如咱们上面所示,该控件并没有消失:你依然能够运用底层的 Plotly.py 的 API 来调整和优化用 Plotly Express 制造的图表。

支撑这种简练 API 的首要规划决议计划之一是一切 Plotly Express 的函数都承受“整齐”的 dataframe 作为输入。 每个 Plotly Express 函数都表现了dataframe 中行与单个或分组符号的明晰映射,并具有图形启示的语法签名,可让您直接映射这些符号的变量,如 x 或 y 方位、色彩、巨细、 facet-column 乃至是 动画帧到数据框(dataframe)中的列。 当您键入px绘画人体姿势写真2000例.scatter(data,x ='col1',y='col2')时,Plotly Express 会为数据框中的每一行创立一个小符号符号 - 这便是px.scatter的效果 - 并将 “col1” 映射到 x 方位(相似于 y 方位)。 这种办法上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌的强壮之处在于它以相同的方法处理一切可视化变量:您能够将数据框列映只要忏悔者才干射到色彩,然后经过更改参数来改动您的主意并将其映射到巨细或进行行分面(facet-row)。

承受整个整齐的 dataframe 的列名作为输入(而不是原始的numpy向量)也答应px为你节约许多的时刻,由于它知道列的称号,它能够生成一切的 Plotly.py 装备用于符号图例、轴、悬停框、构面乃至动画帧。 可是,如上所述,假如你的 dataframe 的列被蠢笨地命名,你能够通知px用每个函数的labels参数替换更好的。

仅承受整齐输入所带来的终究优势是它更直接地支撑快速迭代:您收拾一次数据集,从那里能够运用px创立数十种不同类型的图表,包含在 SPLOM 中可视化多个维度 、运用平行坐标、在地图上制造,在二维、三维极坐标或三维坐标中运用等,一切这些都不需求重塑您的数据!

咱们没有以权宜之计的名义献身操控的一切方面,咱们只重视您想要在数据可视化进程的探究阶段发挥的操控类型。上海中医药大学,举荐:这才是你寻寻觅觅想要的 Python 可视化神器,喉癌 您能够对大多数函数运用category_orders参数来通知px您的分类数据“好”、“更好”、“最佳” 等具有重要的非字母次序,而且它将用于分类轴、分面制造 和图例的排序。 您能够运用color_discrete_map(以及其他* _map参数)将特定色彩固定到特定数据值(假如这对您的示例有意义)。 当然,你能够在任何当地重构color_discrete_sequence或color_经侦大队办案问话流程continuous_scale(和其他*_sequence参数)。

在 API 等级,咱们在px中投入了许多的作业,以保证一切参数都被命名,以便在键入时最大极限地发现:一切scatter-相似的函数都以scatter最初(例如scatter_polar,scatter_ternary)所以你能够经过主动补全来发现它们。 咱们挑选拆分这些不同的散点图函数,因而每个散点图函数都会承受一组定制的关键字参数,特天不藏奸演员表别是它们的坐标系。 也便是说,同享坐标系的函数集(例如scatter国产gv,line&bar,或scatter_polar,line_polar和bar_polar)也有相同的参数,以最大极限当地便学习。 咱们还花了许多精力来提出简略而赋有表现力的称号,这些称号很好地映射到底层的 Plotly.py 特点,以便于在作业流程中稍后调整到交互的图表中。

最终,Plotly Express 作为一个新的 Python 可视化库,在 Plotly 生态系统下,将会迅速开展。所以不要犹疑,当即开始运用 Plotly Express 吧!

需求python教程+PDF电子书的小伙伴

请重视、转发、私信我"学习"就能免费获取教程+电子书。

热门
最新
推荐
标签