Agreed with the solutions above, but I found the reasons while reading Thomas Calculus Chapter 1. What happened, as the book pointed out, is that some software including numpy in this case calculates x ** (1/3) as np.e ** (1 / 3 * np.log(x)), and by the definition of log when x <= 0 the value is undefined, that's why you will see these errors happening and while you further trying to graph the arrays errors of graph incompletion will occur. Hope this explanation helps with understanding the issue.