In [2]:
import sympy as sym
import numpy as np
import matplotlib.pyplot as plt
In [24]:
N = 1001
x = np.linspace(0,6,N)

V = np.piecewise(x,
                [x<3, x>3],
                [lambda x: -2/3*x**2-4, lambda x: 24-4*x])

M = np.piecewise(x,
                [x<=3, x>=3],
                [lambda x: -2/9*x**3-4*x, lambda x: -2*(6-x)**2])
In [27]:
%matplotlib inline

from matplotlib import rcParams

rcParams['font.size']=16
rcParams['mathtext.fontset']='cm'
In [32]:
#fig, axes = plt.subplots(1,2,tight_layout=True)

fig = plt.figure()
ax1 = fig.add_axes([0.1,0.1,0.8,0.8])
ax2 = fig.add_axes([1.2,0.1,0.8,0.8])

#plt.subplot(1,2,1)
ax1.plot(x,V,'blue')
ax1.set_xlabel(r'$x\;\; [{\rm m}]$',fontsize=20)
ax1.set_ylabel(r'$V\;\; [{\rm N}]$',fontsize=20)
ax1.axhline(y=0,color='k')
ax1.axvline(x=0,color='k')
ax1.fill_between(x,V,color='blue',alpha=0.2)
ax1.set_yticks([0, -4, -10, 12], minor=False)
ax1.set_xticks([3,6], minor=False)
ax1.grid(True)

ax2.plot(x,M)
ax2.set_xlabel(r'$x\;\; [{\rm m}]$',fontsize=20)
ax2.set_ylabel(r'$M\;\; [{\rm N}\cdot {\rm m}]$',fontsize=20)
ax2.axhline(y=0,color='k')
ax2.axvline(x=0,color='k')
ax2.fill_between(x,M,color='blue',alpha=0.2)
ax2.set_yticks([0,-18], minor=False)
ax2.set_xticks([3,6], minor=False)
ax2.grid(True)
In [ ]: