I am trying to iterated over the array of matplotlib.axes.AxesSubplot retuned by pandas.DataFrame.hist to make each subhistogram logy. The following example code does not work
from pandas import DataFrame
import numpy as np
import matplotlib.pyplot as plt
x = np.random.uniform(0, 100, size=1000)
y = x *x + 50*x*np.random.randn(1000)
z = x * y + 50*y*np.random.randn(1000)
frame = DataFrame({'z' : z,'x' : x , 'y' : y})
Histograms = frame.hist(bins=50)
for axis in np.nditer(Histograms,"refs_ok"):
axis.set_yscale("log", nonposy='clip')
plt.show()