Added theme and labels back into python scripts

This commit is contained in:
Janita Willumsen 2023-12-04 15:09:37 +01:00
parent 08a6b32adb
commit 90047decb4
32 changed files with 136 additions and 53 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -48,13 +48,13 @@ def plot_1_0():
ax1.plot(t, energy, label=f"{label}", color=color) ax1.plot(t, energy, label=f"{label}", color=color)
ax2.plot(t, magnetization, label=f"{label}", color=color) ax2.plot(t, magnetization, label=f"{label}", color=color)
ax1.set_xlabel("t") ax1.set_xlabel("t (MC cycles)")
ax1.set_ylabel(r"$\langle \epsilon \rangle$") ax1.set_ylabel(r"$\langle \epsilon \rangle$ $(J)$")
ax1.legend(title="Initial state", loc="upper right") ax1.legend(title="Initial state", loc="upper right")
fig1.savefig("./latex/images/burn_in_time_energy_1_0.pdf", bbox_inches="tight") fig1.savefig("./latex/images/burn_in_time_energy_1_0.pdf", bbox_inches="tight")
ax2.set_ylabel(r"$\langle |m| \rangle$")
ax2.set_xlabel("t") ax2.set_ylabel(r"$\langle |m| \rangle$ (unitless)")
ax2.set_xlabel("t (MC cycles)")
ax2.legend(title="Initial state", loc="upper right") ax2.legend(title="Initial state", loc="upper right")
fig2.savefig( fig2.savefig(
"./latex/images/burn_in_time_magnetization_1_0.pdf", bbox_inches="tight" "./latex/images/burn_in_time_magnetization_1_0.pdf", bbox_inches="tight"
@ -94,13 +94,13 @@ def plot_2_4():
ax1.plot(t, energy, label=f"{label}", color=color) ax1.plot(t, energy, label=f"{label}", color=color)
ax2.plot(t, magnetization, label=f"{label}", color=color) ax2.plot(t, magnetization, label=f"{label}", color=color)
ax1.set_xlabel("t") ax1.set_xlabel("t (MC cycles)")
ax1.set_ylabel(r"$\langle \epsilon \rangle$") ax1.set_ylabel(r"$\langle \epsilon \rangle$ $(J)$")
ax1.legend(title="Initial state", loc="upper right") ax1.legend(title="Initial state", loc="upper right")
fig1.savefig("./latex/images/burn_in_time_energy_2_4.pdf", bbox_inches="tight") fig1.savefig("./latex/images/burn_in_time_energy_2_4.pdf", bbox_inches="tight")
ax2.set_ylabel(r"$\langle |m| \rangle$")
ax2.set_xlabel("t") ax2.set_ylabel(r"$\langle |m| \rangle$ (unitless)")
ax2.set_xlabel("t (MC cycles)")
ax2.legend(title="Initial state", loc="upper right") ax2.legend(title="Initial state", loc="upper right")
fig2.savefig( fig2.savefig(
"./latex/images/burn_in_time_magnetization_2_4.pdf", bbox_inches="tight" "./latex/images/burn_in_time_magnetization_2_4.pdf", bbox_inches="tight"

View File

@ -40,7 +40,7 @@ def plot(infile, outfile):
ec="white", ec="white",
lw=0.2, lw=0.2,
) )
ax1.set_xlabel(r"$\epsilon$") ax1.set_xlabel(r"$\epsilon$ $(J)$")
ax1.set_ylabel("Density") ax1.set_ylabel("Density")
mu, sigma = np.mean(eps), np.std(eps) mu, sigma = np.mean(eps), np.std(eps)

View File

@ -4,6 +4,20 @@ from pathlib import Path
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
import numpy as np import numpy as np
from scipy.stats import linregress from scipy.stats import linregress
import seaborn as sns
sns.set_theme()
params = {
"font.family": "Serif",
"font.serif": "Roman",
"text.usetex": True,
"axes.titlesize": "large",
"axes.labelsize": "large",
"xtick.labelsize": "large",
"ytick.labelsize": "large",
"legend.fontsize": "medium",
}
plt.rcParams.update(params)
def plot_phase_transition_alt(indir, outdir): def plot_phase_transition_alt(indir, outdir):
@ -65,20 +79,40 @@ def plot_phase_transition_alt(indir, outdir):
x = np.linspace(0, 1 / 20, 1001) x = np.linspace(0, 1 / 20, 1001)
regression = linregress(inv_L, Tc) regression = linregress(inv_L, Tc)
f = lambda x: regression[0] * x + regression[1] f = lambda x: regression[0] * x + regression[1]
stats = (
f"$\\beta_{0}$ = {regression[1]:.4f}\n"
f"$\\beta_{1}$ = {regression[0]:.4f}"
)
bbox = dict(boxstyle="round", pad=0.3, fc="white", ec="white", alpha=0.5)
ax5.text(
0.6, 0.6, stats, bbox=bbox, transform=ax1.transAxes, ha="right", va="center"
)
ax5.scatter(inv_L, Tc) ax5.scatter(inv_L, Tc)
ax5.plot(x, f(x), label=f"m = {regression[0]}, i = {regression[1]}") ax5.plot(x, f(x))
figure1.legend() ax1.set_xlabel(r"T $(J/k_{B})$")
figure2.legend() ax1.set_ylabel(r"$\langle \epsilon \rangle$ $(J)$")
figure3.legend() ax1.legend(title="Lattice size", loc="upper right")
figure4.legend()
figure5.legend()
figure1.savefig(Path(outdir, "energy.pdf")) ax2.set_xlabel(r"T $(J/k_{B})$")
figure2.savefig(Path(outdir, "magnetization.pdf")) ax2.set_ylabel(r"$\langle |m| \rangle$ $(unitless)$")
figure3.savefig(Path(outdir, "heat_capacity.pdf")) ax2.legend(title="Lattice size", loc="upper right")
figure4.savefig(Path(outdir, "susceptibility.pdf"))
figure5.savefig(Path(outdir, "linreg.pdf")) ax3.set_xlabel(r"T $(J/k_{B})$")
ax3.set_ylabel(r"$C_{V}$ $(k_{B})$")
ax3.legend(title="Lattice size", loc="upper right")
ax4.set_xlabel(r"T $(J/k_{B})$")
ax4.set_ylabel(r"$\chi$ $(1/J)$")
ax4.legend(title="Lattice size", loc="upper right")
# ax5.legend()
figure1.savefig(Path(outdir, "energy.pdf"), bbox_inches="tight")
figure2.savefig(Path(outdir, "magnetization.pdf"), bbox_inches="tight")
figure3.savefig(Path(outdir, "heat_capacity.pdf"), bbox_inches="tight")
figure4.savefig(Path(outdir, "susceptibility.pdf"), bbox_inches="tight")
figure5.savefig(Path(outdir, "linreg.pdf"), bbox_inches="tight")
plt.close(figure1) plt.close(figure1)
plt.close(figure2) plt.close(figure2)
@ -99,11 +133,11 @@ def plot_phase_transition(indir, outdir):
"size_100.txt", "size_100.txt",
] ]
labels = [ labels = [
"L = 20", "20",
"L = 40", "40",
"L = 60", "60",
"L = 80", "80",
"L = 100", "100",
] ]
figure1, ax1 = plt.subplots() figure1, ax1 = plt.subplots()
@ -151,20 +185,40 @@ def plot_phase_transition(indir, outdir):
x = np.linspace(0, 1 / 20, 1001) x = np.linspace(0, 1 / 20, 1001)
regression = linregress(inv_L, Tc) regression = linregress(inv_L, Tc)
f = lambda x: regression[0] * x + regression[1] f = lambda x: regression[0] * x + regression[1]
stats = (
f"$\\beta_{0}$ = {regression[1]:.4f}\n"
f"$\\beta_{1}$ = {regression[0]:.4f}"
)
bbox = dict(boxstyle="round", pad=0.3, fc="white", ec="white", alpha=0.5)
ax5.text(
0.6, 0.6, stats, bbox=bbox, transform=ax1.transAxes, ha="right", va="center"
)
ax5.scatter(inv_L, Tc) ax5.scatter(inv_L, Tc)
ax5.plot(x, f(x), label=f"m = {regression[0]}, i = {regression[1]}") ax5.plot(x, f(x))
figure1.legend() ax1.set_xlabel(r"T $(J/k_{B})$")
figure2.legend() ax1.set_ylabel(r"$\langle \epsilon \rangle$ $(J)$")
figure3.legend() ax1.legend(title="Lattice size", loc="upper right")
figure4.legend()
figure5.legend()
figure1.savefig(Path(outdir, "energy.pdf")) ax2.set_xlabel(r"T $(J/k_{B})$")
figure2.savefig(Path(outdir, "magnetization.pdf")) ax2.set_ylabel(r"$\langle |m| \rangle$ $(unitless)$")
figure3.savefig(Path(outdir, "heat_capacity.pdf")) ax2.legend(title="Lattice size", loc="upper right")
figure4.savefig(Path(outdir, "susceptibility.pdf"))
figure5.savefig(Path(outdir, "linreg.pdf")) ax3.set_xlabel(r"T $(J/k_{B})$")
ax3.set_ylabel(r"$C_{V}$ $(k_{B})$")
ax3.legend(title="Lattice size", loc="upper right")
ax4.set_xlabel(r"T $(J/k_{B})$")
ax4.set_ylabel(r"$\chi$ $(1/J)$")
ax4.legend(title="Lattice size", loc="upper right")
# ax5.legend()
figure1.savefig(Path(outdir, "energy.pdf"), bbox_inches="tight")
figure2.savefig(Path(outdir, "magnetization.pdf"), bbox_inches="tight")
figure3.savefig(Path(outdir, "heat_capacity.pdf"), bbox_inches="tight")
figure4.savefig(Path(outdir, "susceptibility.pdf"), bbox_inches="tight")
figure5.savefig(Path(outdir, "linreg.pdf"), bbox_inches="tight")
plt.close(figure1) plt.close(figure1)
plt.close(figure2) plt.close(figure2)

View File

@ -2,6 +2,20 @@ from os import makedirs
from pathlib import Path from pathlib import Path
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
import seaborn as sns
sns.set_theme()
params = {
"font.family": "Serif",
"font.serif": "Roman",
"text.usetex": True,
"axes.titlesize": "large",
"axes.labelsize": "large",
"xtick.labelsize": "large",
"ytick.labelsize": "large",
"legend.fontsize": "medium",
}
plt.rcParams.update(params)
def plot(indir, outdir): def plot(indir, outdir):
@ -13,8 +27,12 @@ def plot(indir, outdir):
"burn_in.txt", "burn_in.txt",
] ]
labels = [ labels = [
"Without burn-in time", "Without",
"With burn-in time", "With",
]
colors = [
"darkred",
"seagreen",
] ]
figure1, ax1 = plt.subplots() figure1, ax1 = plt.subplots()
@ -22,7 +40,7 @@ def plot(indir, outdir):
figure3, ax3 = plt.subplots() figure3, ax3 = plt.subplots()
figure4, ax4 = plt.subplots() figure4, ax4 = plt.subplots()
for file, label in zip(files, labels): for file, label, color in zip(files, labels, colors):
t = [] t = []
e = [] e = []
m = [] m = []
@ -39,20 +57,31 @@ def plot(indir, outdir):
CV.append(float(l[3])) CV.append(float(l[3]))
X.append(float(l[4])) X.append(float(l[4]))
ax1.plot(t, e, label=label) ax1.plot(t, e, label=label, color=color)
ax2.plot(t, m, label=label) ax2.plot(t, m, label=label, color=color)
ax3.plot(t, CV, label=label) ax3.plot(t, CV, label=label, color=color)
ax4.plot(t, X, label=label) ax4.plot(t, X, label=label, color=color)
figure1.legend() ax1.set_xlabel(r"T $(J/k_{B})$")
figure2.legend() ax1.set_ylabel(r"$\langle \epsilon \rangle$ $(J)$")
figure3.legend() ax1.legend(title="Burn-in time", loc="upper right")
figure4.legend()
figure1.savefig(Path(outdir, "energy.pdf")) ax2.set_xlabel(r"T $(J/k_{B})$")
figure2.savefig(Path(outdir, "magnetization.pdf")) ax2.set_ylabel(r"$\langle |m| \rangle$ $(unitless)$")
figure3.savefig(Path(outdir, "heat_capacity.pdf")) ax2.legend(title="Burn-in time", loc="upper right")
figure4.savefig(Path(outdir, "susceptibility.pdf"))
ax3.set_xlabel(r"T $(J/k_{B})$")
ax3.set_ylabel(r"$C_{V}$ $(k_{B})$")
ax3.legend(title="Burn-in time", loc="upper right")
ax4.set_xlabel(r"T $(J/k_{B})$")
ax4.set_ylabel(r"$\chi$ $(1/J)$")
ax4.legend(title="Burn-in time", loc="upper right")
figure1.savefig(Path(outdir, "energy.pdf"), bbox_inches="tight")
figure2.savefig(Path(outdir, "magnetization.pdf"), bbox_inches="tight")
figure3.savefig(Path(outdir, "heat_capacity.pdf"), bbox_inches="tight")
figure4.savefig(Path(outdir, "susceptibility.pdf"), bbox_inches="tight")
plt.close(figure1) plt.close(figure1)
plt.close(figure2) plt.close(figure2)