timprove plot appearance - sphere - GPU-based 3D discrete element method algori… | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit 2acbed5f2f251f9407971a685c64bbc5500a4678 | |
parent 5cf8cf60ab4e8fe6aff991a2b56ea3ac01fa0ae9 | |
Author: Anders Damsgaard <[email protected]> | |
Date: Mon, 12 Jan 2015 13:35:53 +0100 | |
improve plot appearance | |
Diffstat: | |
M python/sphere.py | 35 +++++++++++++++++++----------… | |
1 file changed, 21 insertions(+), 14 deletions(-) | |
--- | |
diff --git a/python/sphere.py b/python/sphere.py | |
t@@ -4,6 +4,9 @@ import numpy | |
import matplotlib | |
matplotlib.use('Agg') | |
import matplotlib.pyplot as plt | |
+matplotlib.rcParams.update({'font.size': 18, 'font.family': 'serif'}) | |
+matplotlib.rc('text', usetex=True) | |
+matplotlib.rcParams['text.latex.preamble']=[r"\usepackage{amsmath}"] | |
from matplotlib.font_manager import FontProperties | |
import subprocess | |
try: | |
t@@ -5375,7 +5378,7 @@ class sim: | |
### Plotting | |
if (outformat != 'txt'): | |
- fig = plt.figure(figsize=(15,10),dpi=300) | |
+ fig = plt.figure(figsize=(8,8)) | |
if method == 'energy': | |
t@@ -5766,16 +5769,15 @@ class sim: | |
for i in numpy.arange(sb.num[2]): | |
zpos_c[i] = i*dz + 0.5*dz | |
- #shear_strain = numpy.zeros(sb.status()) | |
+ shear_strain = numpy.zeros(sb.status()) | |
pres = numpy.zeros((sb.num[2], sb.status())) | |
# Read pressure values from simulation binaries | |
for i in numpy.arange(sb.status()): | |
sb.readstep(i, verbose = False) | |
pres[:,i] = numpy.average(numpy.average(sb.p_f, axis=0), axis=… | |
- | |
- #shear_strain[i] = sb.shearStrain() | |
- t = numpy.linspace(0.0, sb.time_current, lastfile+1) | |
+ shear_strain[i] = sb.shearStrain() | |
+ #t = numpy.linspace(0.0, sb.time_current, lastfile+1) | |
# Plotting | |
if (outformat != 'txt'): | |
t@@ -5786,22 +5788,27 @@ class sim: | |
# use largest difference in p from 0 as +/- limit on colormap | |
p_ext = numpy.max(numpy.abs(pres)) | |
- im1 = ax.pcolormesh(t, zpos_c, pres, | |
+ im1 = ax.pcolormesh( | |
+ #t, zpos_c, pres, | |
+ shear_strain, zpos_c, pres, | |
cmap=matplotlib.cm.get_cmap('bwr'), | |
#cmap=matplotlib.cm.get_cmap('coolwarm'), | |
vmin=-p_ext, vmax=p_ext, | |
rasterized=True) | |
- #ax.set_xlim([0, numpy.max(shear_strain)]) | |
- ax.set_xlim([0, numpy.max(t)]) | |
- ax.set_ylim([zpos_c[0], zpos_c[-1]]) | |
- #ax.set_xlabel('Shear strain $\\gamma$ [-]') | |
- ax.set_xlabel('Time $t$ [s]') | |
+ ax.set_xlim([0, numpy.max(shear_strain)]) | |
+ #ax.set_xlim([0, numpy.max(t)]) | |
+ if sb.w_x[0] < sb.L[2]: | |
+ ax.set_ylim([zpos_c[0], sb.w_x[0]]) | |
+ else: | |
+ ax.set_ylim([zpos_c[0], zpos_c[-1]]) | |
+ ax.set_xlabel('Shear strain $\\gamma$ [-]') | |
+ #ax.set_xlabel('Time $t$ [s]') | |
ax.set_ylabel('Vertical position $z$ [m]') | |
- ax.set_title(sb.id()) | |
+ #ax.set_title(sb.id()) | |
cb = plt.colorbar(im1) | |
- cb.set_label('$p_f$ [kPa]') | |
+ cb.set_label('$p_\\text{f}$ [kPa]') | |
cb.solids.set_rasterized(True) | |
plt.tight_layout() | |
plt.subplots_adjust(wspace = .05) | |
t@@ -5815,7 +5822,7 @@ class sim: | |
if savefig: | |
fig.savefig("{0}-{1}.{2}".format(self.sid, method, outformat)) | |
fig.clf() | |
- else : | |
+ else: | |
plt.show() | |