Вы можете использовать встроенный метод plot
вашего фрейма данных pandas и опцию subplots=True
для построения по столбцу
from io import StringIO
import pandas as pd
import matplotlib.pyplot as plt
plt.style.use('seaborn')
# Here I read your example data in
df = pd.read_fwf(StringIO("""
X Y Z
0 1.000000 1.000000 1.014925
1 1.000000 1.000000 1.000000
"""), header=1, index_col=0)
# Plotting as desired
df.plot.hist(subplots=True, legend=False)
df.plot
принимает множество других аргументов, чтобы вы могли легко изменить свой график, например,
df.plot.hist(subplots=True, legend=True, layout=(1, 3))