|
|
楼主,应该是p4vasp输出所有的数据都是放到两列,所以画图的画只有一个x 一个y,是没有办法改这些线的颜色的,必须要把所有的数据都分成多个x多个y来画图。我用python写了一个小的脚本可以参考:
- # -*- coding: utf-8 -*-
- """
- Created on Sat Dec 12 20:15:08 2020
- @author: fanyiang
- """
- import pandas as pd
- df0=pd.read_csv('split.csv',header=None)
- l=len(df0)
- l=l+1
- print(l)
- print(df0.head())
- df=df0.iloc[0:2000,:].reset_index(drop=True) #reset_index(drop=True) 用来去掉之前dataframe的index,重新从0生成index
- print(df.tail())
- df_values=locals()
- l=int(l/2001)
- print(l)
- for i in range(2,l+1):
- l1=2001*i-2001
- l2=2001*i-1
- df_values['df'+str(i)]=df0.iloc[l1:l2,:].reset_index(drop=True)
- df=pd.concat([df,df_values['df'+str(i)]],axis=1,join='outer')
- print(df)
- df.to_csv('dos.csv',header=None,index=None)
- print('Done!')
复制代码
我这里是设置了NEDOS=2000,所以p4vasp每2000行输出一个空行,所以我设置每隔2001行取出两列数排到旁边的新列中 |
|