颜色/标记由索引seaborn散点图

时间:2017-08-04 15:08:26

标签: python pandas matplotlib seaborn

是否可以构建一个散点图,该散点图具有索引的特定标记和着色(在此处作为索引给出,或者可以是用于转置的列),其中列给出不同的类。即 - 在群组着色中,在群组之间保持一致。

url = new URL("http://10.0.2.2:8080/app/con_get_data.php");

这会产生以下结果:

Here's the working jsFiddle

但是,我想了解通过索引着色的方法,如下所示:

enter image description here

1 个答案:

答案 0 :(得分:2)

将数据框从数据透视表重组为经典表格数据框,并使用hue stripplot参数,如下所示:

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

df = pd.DataFrame({'Class_1': [0.98, 0.93, 0.95], 'Class_2': [0.48, 0.43, 0.45],  'Class_3': [0.78, 0.73, 0.75]}, index = ['precision', 'recall', 'fscore'])

# convert dataframe  
df2=df.stack()
df2 = df2.reset_index()
df2.columns = ['Index','Classes','Values']
print(df2)

sns.stripplot(data=df2,x='Classes',y='Values',hue='Index', palette="Set2")

plt.show()

DF2:

       Index  Classes  Values
0  precision  Class_1    0.98
1  precision  Class_2    0.48
2  precision  Class_3    0.78
3     recall  Class_1    0.93
4     recall  Class_2    0.43
5     recall  Class_3    0.73
6     fscore  Class_1    0.95
7     fscore  Class_2    0.45
8     fscore  Class_3    0.75

enter image description here