title: Getting an error that reads: ModuleNotFoundError: No module named 'matplotlib.artist'
body: <p>I am trying to run the following code, which I found in an AI for Python book.</p>
  
  <pre><code>import numpy as np
  import matplotlib.pyplot as plt
  from sklearn.metrics import classification_report
  from sklearn import cross_validation
  from sklearn.tree import DecisionTreeClassifier
  
  from utilities import visualize_classifier
  
  # Load input data
  input_file = 'data_decision_trees.txt'
  data = np.loadtxt(input_file, delimiter=',')
  X, y = data[:, :-1], data[:, -1]
  
  # Separate input data into two classes based on labels
  class_0 = np.array(X[y==0])
  class_1 = np.array(X[y==1])
  
  # Visualize input data
  plt.figure()
  plt.scatter(class_0[:, 0], class_0[:, 1], s=75, facecolors='black', 
          edgecolors='black', linewidth=1, marker='x')
  plt.scatter(class_1[:, 0], class_1[:, 1], s=75, facecolors='white', 
          edgecolors='black', linewidth=1, marker='o')
  plt.title('Input data')
  
  # Split data into training and testing datasets 
  X_train, X_test, y_train, y_test = cross_validation.train_test_split(
          X, y, test_size=0.25, random_state=5)
  
  # Decision Trees classifier 
  params = {'random_state': 0, 'max_depth': 4}
  classifier = DecisionTreeClassifier(**params)
  classifier.fit(X_train, y_train)
  visualize_classifier(classifier, X_train, y_train, 'Training dataset')
  
  y_test_pred = classifier.predict(X_test)
  visualize_classifier(classifier, X_test, y_test, 'Test dataset')
  
  # Evaluate classifier performance
  class_names = ['Class-0', 'Class-1']
  print("\n" + "#"*40)
  print("\nClassifier performance on training dataset\n")
  print(classification_report(y_train, classifier.predict(X_train), target_names=class_names))
  print("#"*40 + "\n")
  
  print("#"*40)
  print("\nClassifier performance on test dataset\n")
  print(classification_report(y_test, y_test_pred, target_names=class_names))
  print("#"*40 + "\n")
  
  plt.show()
  </code></pre>
  
  <p>When I try running the code above, I get this error:</p>
  
  <pre><code>ModuleNotFoundError: No module named 'matplotlib.artist'
  </code></pre>
  
  <p>It's a little weird, because I don't have anything in the code named  'matplotlib.artist'.  So, this must be a dependency on something in the code that I'm running.  The code is definitely relying heavily on scikit learn, so I made sure to update all packages before re-running the code above.  </p>
  
  <pre><code>conda update scikit-learn 
  </code></pre>
  
  <p>I'm still getting the same error: </p>
  
  <pre><code>No module named 'matplotlib.artist'
  </code></pre>