首页 > 解决方案 > 我无法在 python 中使用 seaborn 使用 Facegrid 正确放置颜色条

问题描述

我正在尝试使用 Facegrid 功能用 seaborn 绘制一个四维数据。我无法将颜色条放置在正确的位置。我想要一个颜色条,我的 Facegrid 是 2 x 3。尝试不同的类似重复

这就是 get。正确的 Facetgrid,带有条形但第二列被挤压的 Facetgrid,Facetgrid 中没有数据,两个带有 plt.subplots 选项的空子图。

我的代码给了我各种各样的问题。
这是一个代码示例

#
# I have variable X1, Y1,  Pa and ROI. 

df=pd.read_csv (‘data’)


# plot all measure on x-y facet, with hue=Pa
# very energy consuming to plot with all data !!!

# fig , axes = plt.subplots(1,2, squeeze = False)
sns.set()
g=sns.FacetGrid (df, col = 'ROI', hue = 'Pa', col_wrap = 2 ) 

#map plots on grid
g= g.map (sns.scatterplot, 'Y1', 'X1', )

#add axis for color bar
# having issues of using adjust

# plt.subplots_adjust(bottom=0.1, top=0.9, left=0.1, right=0.8, wspace=0.4, hspace=0.1)
# cb_ax = g.add_axes([0.83, 0.1, 0.02, 0.8])

#createing color bar as legend for Pa
color_array=pd.DataFrame (df.Pa)
color_array ['a']='1'
color_array.a=pd.to_numeric (color_array.a, errors = 'coerce')
color_array.Pa=pd.to_numeric (color_array.Pa, errors = 'coerce')
color_array=np.array (color_array)
plt.imshow (color_array)
plt.colorbar ()

plt.show ()
#having issues with saving at some reiterations
plt.savefig ('plot', dpi = 400)

标签: pythonpandasmatplotlibseaborncolorbar

解决方案


推荐阅读