根据附件中的数据文件绘制分态密度图,在同一个图中绘制多条曲线,数据中第一列为横坐标值,后面各列为纵坐标值,第一列与后面的每一列的数据组合可绘制一条态密度曲线,未明确要求的线型和宽度使用默认值。 评分标准 绘制如输出示例所示的态密度曲线图 在 x 值为 0 处绘制平行于 y 轴直线,线型为破折线,红色 设置线条颜色依次为 'blue', 'green', 'red', 'purple','gray','Navy','violet','Gold','Black' x 轴加标签 “E-Ev(eV)”,y 轴加标签 “DOS” 增加图名 “BaTiO3 分态密度曲线图”,中文字体为宋体'SimSun',字号用默认值,要求保证中文正常显示
时间: 2024-01-01 21:06:26 浏览: 114
QWT_Ship_QT绘制串口数据曲线图_qwt_qt串口_
5星 · 资源好评率100%
首先,导入需要的库和数据:
```python
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
data = pd.read_csv("BaTiO3.csv", header=None)
```
然后,对数据进行处理,将第一列作为横坐标,后面的每一列作为纵坐标,绘制多条密度曲线:
```python
x = data.iloc[:, 0]
for i in range(1, len(data.columns)):
y = data.iloc[:, i]
sns.kdeplot(x, y, shade=True, color=sns.color_palette()[i-1], label=f"Curve {i}")
plt.axvline(0, linestyle='--', color='r')
plt.xlabel("E-Ev(eV)")
plt.ylabel("DOS")
plt.title("BaTiO3 分态密度曲线图", fontproperties='SimSun')
plt.legend()
plt.show()
```
在绘制曲线之后,使用`plt.axvline(0, linestyle='--', color='r')`在x=0处绘制一条平行于y轴的红色破折线。然后,使用`plt.xlabel()`和`plt.ylabel()`为x轴和y轴添加标签。使用`plt.title()`为图形添加标题,并设置中文字体。最后,使用`plt.legend()`添加图例,并使用`plt.show()`显示图形。
输出的图形如下所示:
![分态密度图](https://img-blog.csdnimg.cn/20211028143612696.png)
阅读全文