{"id":13498070,"url":"https://github.com/ecmwf/magics-python","last_synced_at":"2025-07-16T06:44:36.090Z","repository":{"id":32944076,"uuid":"147187438","full_name":"ecmwf/magics-python","owner":"ecmwf","description":"Python interface to Magics meteorological plotting package","archived":false,"fork":false,"pushed_at":"2023-04-17T12:41:13.000Z","size":989,"stargazers_count":49,"open_issues_count":9,"forks_count":12,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-07-10T11:15:44.913Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ecmwf.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2018-09-03T10:12:35.000Z","updated_at":"2023-11-22T16:41:06.000Z","dependencies_parsed_at":"2023-02-16T19:31:22.653Z","dependency_job_id":null,"html_url":"https://github.com/ecmwf/magics-python","commit_stats":{"total_commits":263,"total_committers":11,"mean_commits":23.90909090909091,"dds":0.6806083650190113,"last_synced_commit":"840b177f88af9ada515fc1a37bc8267a83e7ad0c"},"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/ecmwf/magics-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf%2Fmagics-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf%2Fmagics-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf%2Fmagics-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf%2Fmagics-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ecmwf","download_url":"https://codeload.github.com/ecmwf/magics-python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ecmwf%2Fmagics-python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265292445,"owners_count":23742064,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T20:00:49.726Z","updated_at":"2025-07-14T12:34:09.504Z","avatar_url":"https://github.com/ecmwf.png","language":"Python","funding_links":[],"categories":["Language based EO Libraries"],"sub_categories":["Python"],"readme":"\nMagics is the latest generation of the ECMWF's meteorological plotting software and can be either\naccessed directly through its Python or Fortran interfaces or by using Metview.\n\n\nFeatures:\n\n- supports plotting of contours, wind fields, observations, satellite images, symbols, text, axis and graphs (including boxplots)\n- can plot GRIB 1 and 2 coded data, gaussian grid, regularly spaced grid and fitted data\n\nLimitations:\n\n- development stage: **Alpha**,\n\n\nInstallation\n------------\n\nThe package is installed from PyPI with::\n\n    $ pip install Magics\n\n\nSystem dependencies\n~~~~~~~~~~~~~~~~~~~\n\nThe python module depends on the ECMWF *Magics* and *eccodes* libraries\n\nThey can be installed from PyPI with::\n     $ pip install ecmwflibs\n\n\n\nYou may run a simple selfcheck command to ensure that your system is set up correctly::\n\n    $ python -m Magics selfcheck\n    Found: Magics 'Magics 4.10.0'.\n    Library: /usr/local/lib/python3.9/site-packages/ecmwflibs/.dylibs/libMagPlus.dylib\n    Magics home: /usr/local/lib/python3.9/site-packages/ecmwflibs\n    Your system is ready.\n\n\nUsage\n-----\n\nFirst, you need a well-formed GRIB file, if you don't have one at hand you can download our\na 2m temperature grib file::\n\n    $ wget http://download.ecmwf.int/test-data/magics/2m_temperature.grib\n\n\nYou may try out the high level API in a python interpreter::\n\n\n\n   from Magics import macro as magics\n\n   name = 'magics'\n   #Setting of the output file name\n   output = magics.output(output_formats = ['png'],\n    \t\toutput_name_first_page_number = \"off\",\n    \t\toutput_name = \"magics\")\n\n   #Import the  data\n   data =  magics.mgrib(grib_input_file_name  = \"2m_temperature.grib\", )\n\n   #Apply an automatic styling\n   contour = magics.mcont( contour_automatic_setting = \"ecmwf\", )\n   coast = magics.mcoast()\n   magics.plot(output, data, contour, coast)\n\n\nRunning the test program will create a png named magics.png\n\n\nYou can find notebooks examples :\nhttps://github.com/ecmwf/notebook-examples/tree/master/visualisation\n\nContributing\n------------\n\nThe main repository is hosted on GitHub,\ntesting, bug reports and contributions are highly welcomed and appreciated:\n\nhttps://github.com/ecmwf/magics-python\n\nPlease see the CONTRIBUTING.rst document for the best way to help.\n\nLead developer:\n\n- `Sylvie Lamy-Thepaut \u003chttps://github.com/sylvielamythepaut\u003e`_ - ECMWF\n\nMain contributors:\n\n- `Stephan Siemen \u003chttps://github.com/stephansiemen\u003e`_ - ECMWF\n- `Alessandro Amici \u003chttps://github.com/alexamici\u003e`_ - B-Open\n- `Daniel Tipping \u003chttps://github.com/dtip\u003e`_ - `Old Reliable \u003chttps://oldreliable.tech\u003e`_\n- `Ian Vermes \u003chttps://github.com/IanVermes\u003e`_ - `Old Reliable \u003chttps://oldreliable.tech\u003e`_\n\nLicense\n-------\n\nCopyright 2017-2018 European Centre for Medium-Range Weather Forecasts (ECMWF).\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0.\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n.. |Travis Build| image:: https://img.shields.io/travis/ecmwf/magics-python/master.svg?logo=travis\n   :target: https://travis-ci.org/ecmwf/magics-python/branches\n.. |Appveyor Build| image:: https://img.shields.io/appveyor/ci/ecmwf/magics-python/master.svg?logo=appveyor\n   :target: https://ci.appveyor.com/project/ecmwf/magics-python/branch/master\n.. |ReadTheDocs Build| image:: https://readthedocs.org/projects/magics-python/badge/?version=latest\n    :target: https://magics-python.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecmwf%2Fmagics-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fecmwf%2Fmagics-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fecmwf%2Fmagics-python/lists"}