我正在尝试Seaborn使我的情节在视觉上比matplotlib更好.我有一个数据集,其中有一个’Year’列,我希望在X轴上绘制,4列在Y轴上使用不同颜色的线表示A,B,C,D.我试图使用sns.lineplot方法执行此操作,但它只允许X轴上的一个变量和Y轴上的一个变量.我试过这样做
sns.lineplot(data_preproc['Year'],data_preproc['A'], err_style=None)
sns.lineplot(data_preproc['Year'],data_preproc['B'], err_style=None)
sns.lineplot(data_preproc['Year'],data_preproc['C'], err_style=None)
sns.lineplot(data_preproc['Year'],data_preproc['D'], err_style=None)
但是这种方式我没有在情节中得到一个图例来显示哪条彩色线对应于什么.我尝试检查文档但找不到合适的方法来执行此操作.
解决方法:
sns.lineplot(x="Year", y="signal", hue="label", data=data_preproc)
您可能需要以合适的方式重新组织数据框,以便有一列用于x数据,一列用于y数据,另一列用于保存数据点的标签.
您也可以使用matplotlib.pyplot.如果你导入seaborn,大部分改进的设计也用于“常规”matplotlib图. Seaborn真的是“只是”方法的集合,可以方便地将数据和绘图参数提供给matplotlib.