In [14]:
import matplotlib.pyplot as plt
%matplotlib inline
from pymatgen.util.plotting_utils import get_publication_quality_plot
In [2]:
import numpy as np
import pandas as pd
In [6]:
ls
In [20]:
datafile = pd.read_csv('results.csv')
In [21]:
datafile.head(0)
Out[21]:
In [22]:
x = datafile['ecut'].tolist()
x
Out[22]:
In [23]:
y_energy = datafile['Force (meV/angstrom)'].tolist()
y_conver = datafile['Force Converge (meV/angstrom)'].tolist()
In [33]:
fig, (ax0,ax1)=plt.subplots(nrows=2)
fig.set_size_inches(10,10)
ax0.scatter(x, y_energy,marker='o',alpha=0.75,s=60,c='r')
ax0.plot(x,y_energy,c='black')
ax0.set_title('Energy',fontsize=30,y=1.05)
ax0.set_xlabel('Kinetic Energy Cutoff (Ry)',fontsize=24)
ax0.set_ylabel(r'Force $meV/\AA$',fontsize=20)
ax0.set_ylim(3860,3970)
ax0.tick_params(labelsize = 18)
ax1.scatter(x,y_conver,marker='o',alpha=0.75, s=60,c='b')
ax1.plot(x,y_conver,c='black')
ax1.set_title('Energy Difference',fontsize=24,y=1.05)
ax1.set_xlabel('Kinetic Energy Cutoff (Ry)',fontsize=24)
ax1.set_ylabel('Force Converge $meV/\AA$',fontsize=18)
# ax1.set_yscale('log')
ax1.set_ylim(-10,100)
ax1.annotate(r'Convergence < 5 $meV/\AA$ Cutoff 30 Ry', xy=(32, 5), xycoords='data',
xytext=(0.95, 0.95), textcoords='axes fraction',
arrowprops=dict(facecolor='black', shrink=0.05),
horizontalalignment='right', verticalalignment='top',fontsize=16
)
ax1.tick_params(labelsize = 18)
plt.subplots_adjust(hspace=0.5)
plt.show()
In [17]:
Out[17]:
In [18]:
plt.show()