title: NameError: global name 'imshow' is not defined but Matplotlib is imported
body: <p>I'm currently writing a python script which plots a numpy matrix containing some data (which I'm not having any difficulty computing). For complicated reasons having to do with how I'm creating that data, I have to go through terminal. I've done problems like this a million times in Spyder using <code>imshow()</code>. So, I thought I'd try to do the same in terminal. Here's my code:</p>
  
  <pre><code>      from numpy import *
        from matplotlib import *
  
        def make_picture():
            f = open("DATA2.txt")
            arr = zeros((200, 200))
            l = f.readlines()
            for i in l:
                j = i[:-1]
                k = j.split(" ")
                arr[int(k[0])][int(k[1])] = float(k[2])
            f.close()
            imshow(arr)
  
        make_picture()
  </code></pre>
  
  <p>Suffice it to say, the array stuff works just fine. I've tested it, and it extracts the data perfectly well. So, I've got this 200 by 200 array of numbers floating around my RAM and I'd like to display it. When I run this code in Spyder, I get exactly what I expected. However, when I run this code in Terminal, I get an error message:</p>
  
  <pre><code>      Traceback (most recent call last):
          File "DATAmine.py", line 15, in &lt;module&gt;
            make_picture()
          File "DATAmine.py", line 13, in make_picture
            imshow(arr)
        NameError: global name 'imshow' is not defined
  </code></pre>
  
  <p>(My program's called DATAmine.py) What's the deal here? Is there something else I should be importing? I know I had to configure my Spyder paths, so I wonder if I don't have access to those paths or something. Any suggestions would be greatly appreciated. Thanks!</p>
  
  <p>P.S. Perhaps I should mention I'm using Ubuntu. Don't know if that's relevant. </p>