如果你有一个Colormap
cmap = matplotlib.cm.get_cmap('Spectral')
Run Code Online (Sandbox Code Playgroud)
如何在0和1之间获得特定的颜色,其中0.0是地图中的第一种颜色,1.0是地图中的最后一种颜色?
理想情况下,我可以通过以下方式获得地图中的中间颜色:
>>> do_some_magic(cmap, 0.5) # Return an RGBA tuplet
(0.1, 0.2, 0.3, 1.0)
Run Code Online (Sandbox Code Playgroud) 我有下面的代码
import plotly.express as px
import pandas as pd
import numpy as np
x = [1,2,3,4,5,6]
df = pd.DataFrame(
{
'x': x*3,
'y': list(np.array(x)) + list(np.array(x)**2) + list(np.array(x)**.5),
'color': list(np.array(x)*0) + list(np.array(x)*0+1) + list(np.array(x)*0+2),
}
)
for plotting_function in [px.scatter, px.line]:
fig = plotting_function(
df,
x = 'x',
y = 'y',
color = 'color',
title = f'Using {plotting_function.__name__}',
)
fig.show()
Run Code Online (Sandbox Code Playgroud)
产生以下两个图:
由于某种原因px.line,没有产生我想要的连续色阶,并且在文档中px.scatter我找不到如何将点与线连接起来。如何生成具有连续色标和连接每条迹线点的线的绘图?