Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
apps:python:start [2023/01/05 20:09] – [Launch ScriptCatcher manually] enviadmin | apps:python:start [2023/03/12 22:15] (current) – [Python for ENVI-met] enviadmin | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Python for ENVI-met ====== | ====== Python for ENVI-met ====== | ||
- | Starting with Version 5, ENVI-met integrates | + | Starting with Version 5, ENVI-met integrates |
- | Over the last years, Python has established itself as universal scripting language for all thinkable use cases. Python covers an endless list of areas of expertise | + | Over the last years, Python has established itself as universal scripting language for all thinkable use cases. Python covers an endless list of areas of expertise |
To cut a long story short, there is almost no thinkable area of computer science where we might miss Python versions or Python integrations of the up-to-date code libraries or cutting edge technologies. | To cut a long story short, there is almost no thinkable area of computer science where we might miss Python versions or Python integrations of the up-to-date code libraries or cutting edge technologies. | ||
- | From the perspecitve | + | From the perspective |
* Processing, Analysis and Visualisation of model data | * Processing, Analysis and Visualisation of model data | ||
- | * Controlling and scripting the behaviour of ENVI-met | + | * Controlling and scripting the behaviour of ENVI-met |
* Extending the data interfaces of applications using Python libraries and packages | * Extending the data interfaces of applications using Python libraries and packages | ||
Line 18: | Line 18: | ||
==== Using the internal Python distribution ==== | ==== Using the internal Python distribution ==== | ||
- | ENVI-met ships with a small 64Bit Python distribution ensuring that minimal requirements and software dependencies are satisfied. However, in almost all cases, you will need to install | + | ENVI-met ships with a small 64Bit Python distribution ensuring that minimal requirements and software dependencies are satisfied. However, in almost all cases, you will need to install |
[[wp> | [[wp> | ||
These packages need to be installed into the ENVI-met Python distribution after installing ENVI-met itelf to use most of the scripts related to ENVI-met. | These packages need to be installed into the ENVI-met Python distribution after installing ENVI-met itelf to use most of the scripts related to ENVI-met. | ||
- | The ENVI-met Python distribution is completly | + | The ENVI-met Python distribution is completely |
+ | |||
+ | ENVI-met DataStudio will support you in an automated install of the most required packages for ENVI-met. If DataStudio recognizes that e.g. Pandas is missing, if will prompt you to enter a quick install routine to add the missing modules (Internet access required) | ||
- | ENVI-met | ||
==== Using my own Python distribution ==== | ==== Using my own Python distribution ==== | ||
Line 29: | Line 30: | ||
Many users already do have a working Python installation on their computers including all the packages and libraries they need for their daily work. | Many users already do have a working Python installation on their computers including all the packages and libraries they need for their daily work. | ||
There is no need to double a Python distribution. Using the Workspace Manager, you can direct ENVI-met any time to use your personal installed Python distribution instesd of using and manage the embedded ENVI-met Python version. | There is no need to double a Python distribution. Using the Workspace Manager, you can direct ENVI-met any time to use your personal installed Python distribution instesd of using and manage the embedded ENVI-met Python version. | ||
+ | |||
+ | ==== Make sure all required packages and modules are existing and matching ==== | ||
+ | |||
+ | Well, that's not possible. | ||
+ | Any script can use its own set of required modules and libraries and the libs between each other may have dependencies, | ||
+ | This is an issue related to programming in Python (or to programming in general) and it cannot be solved by ENVI-met. | ||
+ | |||
+ | With BETA 3, you can add a list of required special modules in the script header and DataStudio will check, if they exist. If not (-and if selected as option-) DataStudio will automatically launch PIP and tries to install the missing modules and packages. We labelled these modules as //Special Modules// because modules which are not basically a part of Python, but are so basic that they need to exist on any system (such as NumPy or Pandas) will probably not be extra-listed in the Required Modules section. | ||
+ | |||
+ | However, there is no guarantee, that this install will be successful or that ALL of the required special modules have been listed in the header and that their versions will work together. If in doubt, you need to check the script in detail and go back to its sources to find out, what is missing. | ||
+ | |||
+ | |||
==== Scripting ENVI-met apps in Python ==== | ==== Scripting ENVI-met apps in Python ==== | ||
Line 40: | Line 53: | ||
In addition, ENVI-met related objects are only available inside the ENVI-met DataStudio biotope. In the future we will also provide standalone packages for accessing fundamental operations such as reading and analysing EDX fies from other Python environments, | In addition, ENVI-met related objects are only available inside the ENVI-met DataStudio biotope. In the future we will also provide standalone packages for accessing fundamental operations such as reading and analysing EDX fies from other Python environments, | ||
- | =====How to import python scripts from the website ===== | + | =====How to import python scripts |
+ | |||
+ | Python scripts for ENVI-met are normal Python scripts, but use the ending .enpy in most cases. Only for libraries, the ending .py must be kept in order to work with Python. | ||
==== Add scripts automatically ==== | ==== Add scripts automatically ==== | ||
- | * Just double-click the downloaded enpy-script. | + | * Just double-click the downloaded |
+ | |||
+ | {{ : | ||
==== Launch ScriptCatcher manually ==== | ==== Launch ScriptCatcher manually ==== | ||
Line 51: | Line 68: | ||
==== Add scripts manually ==== | ==== Add scripts manually ==== | ||
+ | |||
+ | If you want to manage several scripts in one go, a direct copy might be the quickest option. | ||
* Download the script | * Download the script | ||
Line 57: | Line 76: | ||
* Paste the script there | * Paste the script there | ||
* Reload the script library | * Reload the script library | ||
- | * The imported script should now appear in your DataStudio | + | * The imported script should now appear in your DataStudio |
Note: If you are not sure where your personal script folder is located, navigate to the Project Manager (Start Headquarter, | Note: If you are not sure where your personal script folder is located, navigate to the Project Manager (Start Headquarter, |