This tool allows users to input data for substrate concentration (S0
) and observed reaction rates (v0
) to fit the Michaelis-Menten equation. The application provides a graphical user interface to input the data and visualize the curve-fitting results easily.
- Graphical table to manually input data.
- Paste functionality compatible with data copied from Excel.
- Real-time curve fitting to the Michaelis-Menten equation.
- Visual representation of observed data and fitted curve.
- Output of estimated ( V_{max} ) and ( K_m ) parameters in scientific notation.
webbrowser
numpy
tkinter
scipy
matplotlib
Ensure you have Python installed on your system.
Install the required packages using pip
:
pip install numpy scipy matplotlib
or conda
conda install numpy scipy matplotlib
- Run the script:
python Michaelis-Menten-Fit-vXX.py
- A window will popup:
![image](https://private-user-images.githubusercontent.com/20182399/271779390-d4e09358-ce38-43a2-a21b-d7d9ba7d83cb.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ2MDgwMzUsIm5iZiI6MTcyNDYwNzczNSwicGF0aCI6Ii8yMDE4MjM5OS8yNzE3NzkzOTAtZDRlMDkzNTgtY2UzOC00M2EyLWEyMWItZDdkOWJhN2Q4M2NiLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDE3NDIxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWY4NmNmMjk1MjY1ZTdlNGYzMWRiZDFkZDMyZjU0NWFiNTQ0ZTM1ZTM5YmEyOTlhM2IyMTVjMzY2YTU5OTE5NzQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.hTI89mkxqbfjRzkWlxDTbmap1XOqasATx4jqMBtDvh4)
-
Use the graphical interface to input data manually or paste it directly from Excel using the "Paste Data from Excel" button.
-
Click on "Save Data and Fit" to fit the Michaelis-Menten equation and visualize the results.
![image](https://private-user-images.githubusercontent.com/20182399/271764799-cf5d777a-077b-497c-89a0-ad5b058450fe.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQ2MDgwMzUsIm5iZiI6MTcyNDYwNzczNSwicGF0aCI6Ii8yMDE4MjM5OS8yNzE3NjQ3OTktY2Y1ZDc3N2EtMDc3Yi00OTdjLTg5YTAtYWQ1YjA1ODQ1MGZlLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MjUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODI1VDE3NDIxNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWNiNTExMjIzNmFiYzFmMDJhZjI2OTUyMzFlOGEyYWIwZGYwZmNmM2Y3ZjkxMmJhNmViMDdiMGNmYmVhY2E2MGMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.wAuSW9C2VLAQgpR1H4qPP_287Ioia4thlaHfRGRnsVQ)
- Ensure all values are valid and in the correct format like 12E03 (for 12000 e.g., scientific notation) before fitting.
- In principle, it should accept numbers with commas or dots i.e. 1,2E-03 or 1.2E-03.
- If copying from Excel, ensure the data is in two columns with the substrate concentration in the first column and the observed reaction rate in the second.
- It's possible to make an exe file for Windows using "pyinstaller", to distribute the script on computers without Python.
- I can also provide the stand-alone version for Windows upon request.