使用seaborn对不同模型的AUC值在同一张图中绘制箱线图,符合科研配色
时间: 2024-03-10 09:44:00 浏览: 91
科研论文之箱线图.ipynb
好的,以下是一个使用seaborn绘制箱线图的数据示例,并且符合科研配色要求,展示了三个模型的AUC值:
| 模型名称 | AUC值 |
| --- | --- |
| 模型1 | 0.85 |
| 模型1 | 0.87 |
| 模型1 | 0.89 |
| 模型1 | 0.91 |
| 模型1 | 0.92 |
| 模型2 | 0.76 |
| 模型2 | 0.78 |
| 模型2 | 0.79 |
| 模型2 | 0.81 |
| 模型2 | 0.82 |
| 模型3 | 0.92 |
| 模型3 | 0.93 |
| 模型3 | 0.94 |
| 模型3 | 0.95 |
| 模型3 | 0.96 |
以下是绘制箱线图的代码:
``` python
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
# 设定配色方案
colors = ['#1f77b4', '#ff7f0e', '#2ca02c']
# 创建数据框
data = pd.DataFrame({'Model': ['Model 1', 'Model 1', 'Model 1', 'Model 1', 'Model 1',
'Model 2', 'Model 2', 'Model 2', 'Model 2', 'Model 2',
'Model 3', 'Model 3', 'Model 3', 'Model 3', 'Model 3'],
'AUC': [0.85, 0.87, 0.89, 0.91, 0.92,
0.76, 0.78, 0.79, 0.81, 0.82,
0.92, 0.93, 0.94, 0.95, 0.96]})
# 使用seaborn绘制箱线图
sns.set(style='ticks', palette=colors)
sns.boxplot(x='Model', y='AUC', data=data, width=0.3, linewidth=1.5, fliersize=3)
sns.despine(offset=10, trim=True)
# 设定图像标题和坐标轴标签
plt.title('AUC values of Different Models')
plt.xlabel('Model')
plt.ylabel('AUC')
plt.show()
```
在这段代码中,我们使用了`set()`函数来设定配色方案,并通过`boxplot()`函数绘制箱线图。为了符合科研配色要求,我们还调整了箱线图的参数,如宽度、线宽和异常值大小等。最后使用`despine()`函数去除上、右边框,使图像更加简洁。
阅读全文