Вам нужно получить частоты объединенной гистограммы, а затем нормализовать их на 4, чтобы получить среднее значение. Вы можете сделать следующее:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import random
random.seed(0)
Elevations1 = np.zeros(100)
Elevations2 = np.zeros(100)
Elevations3 = np.zeros(100)
Elevations4 = np.zeros(100)
for a in np.arange(len(Elevations1)):
Elevations1[a] = random.randrange(-10000, 10000)
Elevations2[a] = random.randrange(-10000, 10000)
Elevations3[a] = random.randrange(-10000, 10000)
Elevations4[a] = random.randrange(-10000, 10000)
df1 = pd.DataFrame(Elevations1)
df2 = pd.DataFrame(Elevations2)
df3 = pd.DataFrame(Elevations3)
df4 = pd.DataFrame(Elevations4)
df_merged = pd.concat([df1, df2, df3, df4], ignore_index=True)
# Get the frequencies of the combined histogram
hist, bins = np.histogram(df_merged)
# Normalize by 4
hist_norm = hist / 4.0
width = 0.9 * (bins[1] - bins[0])
center = (bins[:-1] + bins[1:]) / 2
# plot the Un-normalited frequencies
plt.bar(center, hist, align='center', width=width)
plt.title('Non- Normalized Histogram')
plt.show()
# plot the normalized frequencies
plt.bar(center, hist_norm, align='center', width=width)
plt.title('Normalized Histogram')
plt.show()

