鉴于我有一个 df 有 4 列,这样:
x = [1,3,6,8]
y = [7,4,8,7]
names = ['eggs','eggs','spam','spam']
hex = ['#76BB76','#76BB76','#7B8BFC','#7B8BFC']
其中名称中的每个元素在“十六进制”列中都有相应的代码。
到目前为止,我已经能够使用名称列对点进行分组,例如:
fg = seaborn.FacetGrid(data=df, hue='names')
fg.map(plt.scatter, 'x', 'y').add_legend()
在这里,我可以使用“十六进制”而不是“名称”,因为它们的分组方式相同。
但是,这会生成一个图,我可以在其中使用现有的 cmap(例如 cmap='viridis')为点着色。我想为这些点分配十六进制列中的自定义颜色,因为这将改善绘图的外观。在 matplotlib/seaborn 中是否有一种简单的方法可以做到这一点?