我在python中有两个 Dataframe 。
data_A
Name X Y
A 1 0
B 1 1
C 0 0
data_B
Name X Y
A 0 1
B 1 1
C 0 1
我想重叠这些热图,其中如果在data_frame A中为1,则图块为紫色(或任何颜色),但如果在data_frame B中为1,则绘制圆(最好是第一个圆)。
例如,热图显示A[,X][1]为紫色,但两个数据框中均为1的热图显示为带点的紫色,C[,Y][3]只有一个点,而C[,X][3]则什么都没有。
我似乎可以用seaborn进行遮罩,并用不同的颜色绘制两个热图,但颜色差异不够清楚,用户无法简单地看到一个图块只有一个而不是两个。我认为用一个圆圈来表示一个矩阵中的正值会更好。
有人知道如何使用seaborn在热图上绘制圆圈吗?
2条答案
按热度按时间wn9m85ua1#
要显示热图,你可以使用
imshow
图。要显示一些点,你可以使用scatter
图。然后在同一个轴上绘制。使用点在同一热图上显示多个数据集的替代方法还可以
dhxwm5r42#
现在可以直接使用python包PyComplexHeatmap绘制复杂热图:https://github.com/DingWB/PyComplexHeatmaphttps://github.com/DingWB/PyComplexHeatmap/blob/main/examples.ipynb
第一节第一节第一节第一节第一次