📜  Python Plotly 中内置的连续色标(1)

📅  最后修改于: 2023-12-03 15:34:03.528000             🧑  作者: Mango

Python Plotly 中内置的连续色标

Plotly 是一款免费的数据可视化工具。其中,连续色标是一种在代码中经常使用的重要元素,特别是在绘制各种类型的地图时。Plotly 内置了许多不同的连续色标,本文将介绍其中的一些。

什么是连续色标?

连续色标是指用于显示数据值的连续色带。它们可以在图表中表现出数据的变化,从而帮助我们理解和分析数据的模式和趋势。

常用连续色标
Sequential

Sequential 是一种基于单色调的连续色标,它们仅使用单个色调从浅色到深色。

Sequential Colorscale

import plotly.express as px
gapminder = px.data.gapminder()
fig = px.scatter(gapminder, x="gdpPercap", y="lifeExp", color="continent",
                 size="pop", hover_name="country", log_x=True, size_max=60,
                 range_color=[0, 6], color_continuous_scale=px.colors.sequential.Plasma)
fig.show()
Diverging

Diverging 是一种基于两个不同颜色的连续色标,由一个中央颜色组成,两端呈现出两种不同的色调。

Diverging Colorscale

import plotly.express as px

df = px.data.gapminder().query("year == 2007").query("continent != 'Asia'")
fig = px.scatter(df, x="gdpPercap", y="lifeExp", size="pop", color="continent", hover_name="country",
           log_x=True, size_max=60,
           category_orders={"continent": ["Europe", "Africa", "Americas", "Oceania"]},
           color_discrete_sequence=px.colors.diverging.Tealrose)
fig.show()
Cyclical

Cyclical 是一种循环性的连续色标,可以在一定范围内循环不断地重复使用。

Cyclical Colorscale

import plotly.graph_objects as go
import numpy as np
from numpy import pi

theta = np.linspace(0, 2*pi, 360)
rho = np.ones(360)
fig = go.Figure(data=go.Scatterpolar(theta=theta, r=rho, 
                                     fill='toself', 
                                     marker=dict(size=2, color=theta, colorscale='Viridis',
                                                 sizemode="area", sizemin=0, sizemax=1),
                                     line=dict(color='black', width=0.1), 
                                     hovertemplate='%{theta:.0f}',
                                     subplot='polar'))
fig.update_layout(polar=dict(radialaxis=dict(visible=False),
                             angularaxis=dict(visible=False)),
                  showlegend=False, width=500, height=500,
                  margin=dict(l=0, r=0, t=0, b=0, pad=0))
fig.show()

以上是 Plotly 内置的一些连续色标,你可以根据不同的数据和需求选择不同的连续色标来增强你的数据可视化效果。