首页 > 解决方案 > 来自 seaborn 的 Matplot 区域绘图调色板

问题描述

我有几个 matplotlib 区域图和一些使用 seaborn 的热图。

我想知道将区域图中的颜色与热图中的颜色相匹配,即使用热图中的颜色作为区域图。只是想让颜色保持一致。

我知道可以使用这样的方法更改颜色,例如我想要灰度:

seq_col = sns.color_palette("Greys_r", 61) 
#sets the charts to greyscale, _r reverse the scale, 61 determines the number of steps
sns.set_palette(seq_col)

但是常规代码热图使用的是什么?我什么也找不到。

请在下面找到一个小示例,我还将附上我想为 matplotlib 图“提取”其颜色的热图。

在此处输入图像描述

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

# dataframe
df = {"Stock1":[1/3, 1/3, 1/3], "Stock2":[1/3, 1/3, 1/3], "Stock3":[1/3, 1/3, 1/3], 
      "day":["1.1.2020", "2.1.2020", "3.1.2020"]}
df = pd.DataFrame(df).set_index("day")

# stacked plot
df = df.plot.area(title="Weight allocation over time")
df.legend(loc='upper right')
plt.minorticks_off()

# heatmap
V = np.full((20,20), 20)
plt.figure(figsize=(7, 7))
g1 = sns.heatmap(V)

plt.show()

标签: pythonmatplotlibseaborn

解决方案


推荐阅读