关于程序员:25张炫酷交互图表一文入门Plotly

37次阅读

共计 4338 个字符,预计需要花费 11 分钟才能阅读完成。

Plotly Express 是一个新的高级 Python 可视化库,它是 Plotly.py 的高级封装,为简单图表提供简略的语法。最次要的是 Plotly 能够与 Pandas 数据类型 DataFrame 完满的联合,对于数据分析、可视化来说切实是太便捷了,而且是完全免费的,十分值得尝试

上面咱们应用 Ployly 的几个内置数据集来进行相干图表绘制的演示

数据集

Plotly 内置的所有数据集都是 DataFrame 格局,也即是与 Pandas 深度符合的体现

不同国家历年 GDP 支出与人均寿命

蕴含字段:国家、洲、年份、平均寿命、人口数量、GDP、国家简称、国家编号

gap = px.data.gapminder()
gap2007 = gap.query("year==2007")
gap2007

Output

图片 0

餐馆的订单流水

蕴含字段:总账单、小费、性别、是否抽烟、星期几、就餐工夫、人数

tips = px.data.tips()
tips

Output

tup 0-1

鸢尾花

蕴含字段:萼片长、萼片宽、花瓣长、花瓣宽、品种、品种编号

iris = px.data.iris()  
iris

Output

tup 0-2

风力

蕴含字段:方向、强度、数值

wind = px.data.wind()  
wind

Output

tup0-3

2013 年蒙特利尔市长选举投票后果

包含字段:区域、Coderre 票数、Bergeron 票数、Joly 票数、总票数、胜者、后果 (占比分类)

election = px.data.election() 
election

Output

tup 0-4

蒙特利尔一个区域核心左近的汽车共享服务的可用性

包含字段:纬度、经度、汽车小时数、顶峰小时

carshare = px.data.carshare()
carshare

Output

tup 0-5

内置调色面板

Plotly 还用于泛滥色调高级的调色板,使得咱们在绘制图表的时候不再为色彩搭配懊恼

卡通片的色调和序列

px.colors.carto.swatches() 

Output

tup 0-6

CMOcean 我的项目的色阶

px.colors.cmocean.swatches() 

Output

tup 0-7

还有其余很多调色板供选择,就不一一展现了,上面只给出代码,具体色彩款式能够自行运行代码查看

ColorBrewer2 我的项目的色阶

px.colors.colorbrewer

周期性色标,实用于具备天然周期构造的间断数据

px.colors.cyclical 

扩散色标,实用于具备天然中点的间断数据

px.colors.diverging     

定性色标,实用于没有天然程序的数据

px.colors.qualitative

程序色标,实用于大多数间断数据

px.colors.sequential        

Plotly Express 根本绘图

散点图

Plotly 绘制散点图非常容易,一行代码就能够实现

px.scatter(gap2007, x="gdpPercap", y="lifeExp")

Output

tup 1

还能够通过参数 color 来辨别不同的数据类别

px.scatter(gap2007, x="gdpPercap", y="lifeExp", color="continent")

Output

tup2

这里每个点都代表一个国家,不同色彩则代表不同的大洲

还能够应用参数 size 来体现数据的大小状况

px.scatter(gap2007, x="gdpPercap", y="lifeExp", color="continent", size="pop", size_max=60)

Output

tup3

还能够通过参数 hover_name 来指定当鼠标悬浮的时候,展现的信息

tup4

还能够依据数据集中不同的数据类型进行图表的拆分

px.scatter(gap2007, x="gdpPercap", y="lifeExp", color="continent", size="pop", 
           size_max=60, hover_name="country", facet_col="continent", log_x=True)

Output

tup5

咱们当然还能够查看不同年份的数据,生成主动切换的动静图表

px.scatter(gap, x="gdpPercap", y="lifeExp", color="continent", size="pop", 
           size_max=60, hover_name="country", animation_frame="year", animation_group="country", log_x=True,
          range_x=[100, 100000], range_y=[25, 90], labels=dict(pop="Population", gdpPercap="GDP per Capa", lifeExp="Life Expectancy"))

Output

tup6

地理信息图

Plotly 绘制动静的地理信息图表也是十分不便,通过这种地图的模式,咱们也能够分明的看到数据集中短少前苏联的相干数据

px.choropleth(gap, locations="iso_alpha", color="lifeExp", hover_name="country", animation_frame="year", 
              color_continuous_scale=px.colors.sequential.Plasma, projection="natural earth")

Output

图片 7

矩阵散点图

px.scatter_matrix(iris, dimensions=['sepal_width', 'sepal_length', 'petal_width', 'petal_length'], color='species', symbol='species')

Output

tup 8

平行坐标图

px.parallel_coordinates(tips, color='size', color_continuous_scale=px.colors.sequential.Inferno)

Output

tup 9

三元散点图

px.scatter_ternary(election, a="Joly", b="Coderre", c="Bergeron", color="winner", size="total", hover_name="district",
                   size_max=15, color_discrete_map = {"Joly": "blue", 
                   "Bergeron": "green", "Coderre":"red"} )

Output

tup 10

极坐标线条图

px.line_polar(wind, r="frequency", theta="direction", color="strength", 
            line_close=True,color_discrete_sequence=px.colors.sequential.Plotly3[-2::-1])

Output

图片 11

小提琴图

px.violin(tips, y="tip", x="sex", color="smoker", facet_col="day", facet_row="time",box=True, points="all", 
          category_orders={"day": ["Thur", "Fri", "Sat", "Sun"], "time": ["Lunch", "Dinner"]},
          hover_data=tips.columns)

Output

tup 12

极坐标条形图

px.bar_polar(wind, r="frequency", theta="direction", color="strength",
            color_discrete_sequence= px.colors.sequential.Plotly3[-2::-1])

Output

tup 13

并行类别图

px.parallel_categories(tips, color="size", color_continuous_scale=px.
            colors.sequential.Inferno)

Output

tup 14

直方图

px.histogram(tips, x="total_bill", color="smoker",facet_row="day", facet_col="time")

Output

tup 15

三维散点图

px.scatter_3d(election, x="Joly", y="Coderre", z="Bergeron", color="winner", 
              size="total", hover_name="district",symbol="result", 
              color_discrete_map = {"Joly": "blue", "Bergeron": "green", 
              "Coderre":"red"})

Output

tup 16

密度等值线图

px.density_contour(iris, x="sepal_width", y="sepal_length", color="species")

Output

tup 17

箱形图

px.box(tips, x="sex", y="tip", color="smoker", notched=True)

Output

tup 18

地理坐标线条图

px.line_geo(gap.query("year==2007"), locations="iso_alpha", 
            color="continent", projection="orthographic")

Output

tup 19

条线图

px.line(gap, x="year", y="lifeExp", color="continent", 
        line_group="country", hover_name="country",
        line_shape="spline", render_mode="svg")

Output

tup 20

面积图

px.area(gap, x="year", y="pop", color="continent", 
        line_group="country")

Output

tup 21

热力求

px.density_heatmap(iris, x="sepal_width", y="sepal_length", 
                   marginal_x="rug", marginal_y="histogram")

Output

tup 22

条形图

px.bar(tips, x="sex", y="total_bill", color="smoker", barmode="group")

Output

tup 23

本文由 mdnice 多平台公布

正文完
 0