seaborn绘图时输入x,y值非实数,值可能为字符串,需要进行处理
解决:
对于第二点:
foo = pd.DataFrame(columns =['Names','Values'])
pandas版本大于0.25
pandas.DataFrame.explode()
将列表列转为独立的单元格,能将值转换为实数而不是字符串
foo = foo.explode('Values')
foo['Values'] = foo['Values'].astype('float')
sns.violinplot(data=foo, x='Names', y='Values')
pandas版本小于0.25
result = foo.explode('Values').reset_index(drop=True)
result = result.assign(Names=result['Names'].astype('category'),
Values=result['Values'].astype(np.float32))
sns_plot = sns.violinplot(x='Names', y='Values', data=result)