# -*- coding: utf-8 -*-
"""
Created on Sun Aug 17 14:11:00 2025

@author: ef
"""

import matplotlib.pyplot as plt
import numpy as np
# Valeurs Ã  remplir
V = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20.2,21.2]
pH = [1,1.04,1.09,1.13,1.18,1.22,1.26,1.32,1.37,1.42,1.48,1.54,1.60,1.67,1.75,1.85,1.95,2.09,2.28,2.59,7,11.39]
# Graphique
plt.plot(V, pH, 'r+', ms=10, label='pH en fonction de $V$')
plt.title('pH en fonction du volume $V$ versé')
plt.xlabel('Volume versé $V$ (mL)')
plt.ylabel('pH')

# Dérivée
derivee = np.diff(pH)/np.diff(V)
derivee = np.append(derivee,0)
# Ajout de la courbe dÃ©rivÃ©e
plt.plot(V, derivee, 'g--', label='$\dfrac{dpH}{dV}$')
# Volume Ã  l'équivalence
position_maxi = np.argmax(derivee)
V_eq = V[position_maxi]
vol_eq = '$V_{E} = $' + str(V_eq) + 'mL'
# Affichage graphique avec les légendes
plt.annotate(vol_eq, xy=(V_eq, np.max(derivee)), xytext=(V_eq+2, np.max(derivee)+2), arrowprops=dict(facecolor='black', shrink=0.05))
plt.legend(loc=0)
plt.show()