使用seaborn的简单线条图

Tit*_*llo 52 python plot matplotlib roc seaborn

我正在尝试使用seaborn(python)绘制ROC曲线.使用matplotlib我只需使用该函数plot:

plt.plot(one_minus_specificity, sensitivity, 'bs--')
Run Code Online (Sandbox Code Playgroud)

where one_minus_specificitysensitivity是两个配对值列表.

在seaborn中是否有简单的情节功能对应物?我看了一下画廊,但我没有找到任何简单的方法.

hit*_*tzg 74

由于seaborn还使用matplotlib进行绘图,因此您可以轻松地将两者结合起来.如果你只想采用seaborn的造型,这个set_style功能应该让你开始:

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

sns.set_style("darkgrid")
plt.plot(np.cumsum(np.random.randn(1000,1)))
plt.show()
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述


kma*_*o23 11

可以使用seaborn.lineplot()它来完成这项工作,但它涉及将numpy数组转换为pandas数据帧的一些额外工作.这是一个完整的例子:

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

# inputs
In [41]: num = np.array([1, 2, 3, 4, 5])
In [42]: sqr = np.array([1, 4, 9, 16, 25])

# convert to pandas dataframe
In [43]: d = {'num': num, 'sqr': sqr}
In [44]: pdnumsqr = pd.DataFrame(d)

# plot using lineplot
In [45]: sns.set(style='darkgrid')
In [46]: sns.lineplot(x='num', y='sqr', data=pdnumsqr)
Out[46]: <matplotlib.axes._subplots.AxesSubplot at 0x7f583c05d0b8>
Run Code Online (Sandbox Code Playgroud)

我们得到以下情节:

方形图