作者:zhoukaipc | 来源:互联网 | 2022-12-12 12:21
我有一个案例和控制样本列表,以及每个样本中存在或不存在哪些特征的信息.包含信息的数据帧可以由Pandas生成:
import pandas as pd
df={'Patient':[True,True,False],'Control':[False,True,False]} # Presence/absence data for three genes for each sample
df=pd.DataFrame(df)
df=df.transpose()
df.columns=['GeneA','GeneB','GeneC']
我需要将这些数据可视化为点图/散点图,使得x和y轴都是分类的,并且存在/不存在由不同的形状编码.如下:
Patient| x x -
Control| - x -
__________________
GeneA GeneB GeneC
我是Matplotlib/seaborn的新手,我可以绘制简单的线图和散点图.但在线搜索我找不到类似于我需要的任何说明或情节.
1> pask..:
一个快速的方法是:
import pandas as pd
import matplotlib.pyplot as plt
df={'Patient':[1,1,0],'Control':[0,1,0]} # Presence/absence data for three genes for each sample
df=pd.DataFrame(df)
df=df.transpose()
df.columns=['GeneA','GeneB','GeneC']
heatmap = plt.imshow(df)
plt.xticks(range(len(df.columns.values)), df.columns.values)
plt.yticks(range(len(df.index)), df.index)
cbar = plt.colorbar(mappable=heatmap, ticks=[0, 1], orientation='vertical')
# vertically oriented colorbar
cbar.ax.set_yticklabels(['Absent', 'Present'])
![在此输入图像描述](https://img.php1.cn/3cd4a/1eebe/cd5/d05d9dfd09a56332.webp)
感谢@DEEPAK SURANA为彩条添加标签.