I found it useful to define one function that can be called using one line of code, so now I can plot any function (assuming the invoked components are valid, e.g. log is loaded as "from math import log", or is expressed as "math.log", and that the function can be evaluated over the specified range):
import matplotlib.pyplot as plt #; plt.rcdefaults()
import numpy as np
from math import log
def plot_func(x,f):
# x = tuple defining range of x
# f = string defining function to plot, in terms of x
x = np.linspace(x[0],x[1],201)
y = list(map(lambda x: eval(f), x))
plt.close()
plt.title('f(x) = ' + f)
plt.plot(x,y, 'b')
plot_func(x=(0, 1), f = '60 * (x**3) * (1-x)**2')
Generates:

It's just nice to avoid formal definition of the function being plotted, and to be able to reuse this to plot anything with one simple line to be tweaked.