File talk:Capabilite Machine.svg
Jump to navigation
Jump to search
Code source pour générer la figure :
{{unsigned2|16:25, 15 June 2017|Raminagrobis}}
import random
import numpy
import matplotlib.pyplot as plt
def graphe1(ax, data, mini, maxi, bins=50):
hist, bins = numpy.histogram(data, bins=bins)
width = 0.7 * (bins[1] - bins[0])
center = (bins[:-1] + bins[1:]) / 2
ax.bar(center, hist, align='center', width=width)
ax.grid(True)
ax.set_ylabel('Nb pièces')
ax.set_xlim( (-2.1, 2.1) )
ax.plot([mini, mini],[0, max(hist)*1.1], linewidth=2.0, color='red' )
ax.plot([maxi, maxi],[0, max(hist)*1.1], linewidth=2.0, color='red' )
std = numpy.std(data)
moy = numpy.mean(data)
cm = (maxi-mini) / (6*std)
print(std)
print(cm)
cmk = min([(maxi-moy) / (3*std), (moy-mini) / (3*std)])
ax.set_title('$C_M$ = ' + str(round(cm,3))+ ', $C_M$K = ' + str(round(cmk,3)))
#ax.set_xticks([-1, 1] )
plt.xticks([-1, 0, 1], ('$T_I$','0', '$T_S$'), fontsize=20 )
fig, axes = plt.subplots(nrows=3,sharex=True,sharey=False)
data = [random.gauss(0, 0.5) for i in range(1000)]
graphe1(axes[0], data, -1, 1, bins=50)
data = [random.gauss(0.76, 0.2) for i in range(1000)]
graphe1(axes[1], data, -1, 1, bins=25)
data = [random.gauss(-0.1, 0.2) for i in range(1000)]
graphe1(axes[2], data, -1, 1, bins=25)
fig.tight_layout()