简体   繁体   English

2 线 plot 使用 seaborn

[英]2 line plot using seaborn

I want to plot this array.我想 plot 这个数组。 I am using seaborn to do that.我正在使用 seaborn 来做到这一点。 I used我用了

import seaborn as sns
sns.set_style('whitegrid')
sns.kdeplot(data= score_for_modelA[:,0])

But the above one only gives for column 1. My scores are in column 1 and 2 and I want both of them plotted in the same graph.但是上面的只给出了第 1 列。我的分数在第 1 列和第 2 列中,我希望它们都绘制在同一张图中。 The sample data is like this: array ([[0.67,0.33],[0.45,0.55],......,[0.81,0.19]]样本数据是这样的:数组([[0.67,0.33],[0.45,0.55],......,[0.81,0.19]]

You can try putting them into a data frame first, with the proper column names, for example:您可以尝试先将它们放入数据框中,并使用正确的列名,例如:

import seaborn as sns
import numpy as np
import pandas as pd

score_for_modelA = np.random.normal(0,1,(50,2))
pd.DataFrame(score_for_modelA,columns = ['col1','col2'])

When you plot, it's a matter of melting it:当你 plot 时,就是把它融化了:

sns.set_style('whitegrid')
sns.kdeplot(data= pd.DataFrame(score_for_modelA,columns = ['col1','col2']).melt(),
            hue = "variable",x = "value")

在此处输入图像描述

As pointed out by @JohanC, if you just want to plot all the columns, you can do without the melt:正如@JohanC 所指出的,如果你只想 plot 所有列,你可以不用融化:

sns.kdeplot(data= pd.DataFrame(score_for_modelA,columns = ['col1','col2']))

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM