如何显示具有不同比例数据的不同类的单个小提琴图?

问题描述

我正在使用Python的Seaborn库通过小提琴图可视化我的数据集。当我在一个图中绘制所有班级的数据时,这些图无法正确显示,这可能是由于所有班级可能没有相同比例的数据所致(如下所示)

Violin plot with all classes together

但是,当我绘制单个类的数据时,它可以正确显示(如图所示)

Violin plot with a single class

我应该以相同的比例尺归一化所有班级的数据,然后再次绘图吗?还是有其他方法可以为所有班级制作一个小提琴图?

感谢您的帮助

编辑:

按照@ warlax56的要求,我正在代码中执行以下操作:

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

# Global settings for Seaborn library
sb.set_style("whitegrid",{
    "grid.linestyle": '--'
})


def main():
    # The location of Gaussian Pre-processing data for both age and BMI
    # that gives the highest accuracy for 0.56s and 0.36s SD respectively
    age_feats_file = '../Data/SVM-RFE-N36-gaussian-age-sigma100.csv'

    # Load the Age csv file
    age_data = pd.read_csv(age_feats_file)

    # plotting only f50 for checking
    vplot = sb.violinplot(x='age_class',y='f50',data=age_data,inner="Box")
    vplot.set_xticklabels(vplot.get_xticklabels(),rotation=20)
    plt.show()

SVM-RFE-N36-gaussian-age-sigma100.csv 是数据集CSV文件,其中包含如下图所示的数据:

Dataset

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...