title: a.transpose().ravel()[0]=x cannot change value of original array in numpy?
body: <p>environment: Python 3.6.0 |Anaconda custom (64-bit), numpy version: 1.11.3<br>
  Example:</p>
  
  <pre><code>In[1]: import numpy as np
  In[2]: a = np.array([[1,2,3], [4,5,6]])
  In[3]: a
  Out[4]: 
  array([[1, 2, 3],
         [4, 5, 6]])
  In[5]: a.transpose()[0] = -1
  In[6]: a
  Out[6]: 
  array([[-1,  2,  3],
         [-1,  5,  6]])
  In[7]: a.ravel()[0] = -2 
  In[8]: a
  Out[8]: 
  array([[-2,  2,  3],
         [-1,  5,  6]])
  In[9]: a.transpose().ravel()[0] = -3
  In[10]: a
  Out[10]: 
  array([[-2,  2,  3],
         [-1,  5,  6]])
  </code></pre>
  
  <p>I know <code>transpose()</code> and <code>ravel()</code> return a view of array, so we can change its value of original array. However, when we use <code>transpose().ravel()</code>, we cannot change it? Why? </p>