pytroll / areadef Goto Github PK
View Code? Open in Web Editor NEWA small tool to graphically help the creation of area definitions in Pytroll. It's WIP and plenty of hardcoded stuff, it needs work before it can be used.
License: MIT License
A small tool to graphically help the creation of area definitions in Pytroll. It's WIP and plenty of hardcoded stuff, it needs work before it can be used.
License: MIT License
This is the sandbox area for the pytroll project, an international cooperation on a future distributed real-time processing system for Meteorological Satellite Data. ------------------------------------ December 2010 Lars Ørum Rasmussen, Esben Sigård Nielsen, Kristian Rune Larsen, Martin Raspaud, Anna Geidne, Adam Dybbroe. Danish Meteorological Institute (DMI) Swedish Meteorological and Hydrological Institute (SMHI)
When I use the installation at http://clemspace.ch/areadef/ to select an area near Crete with a resolution of 500 metre, I get:
crete:
description: Crete and nearby islands
proj: eqc
ellps: WGS84
units: m
shape:
height: 731
height: 293
area_extent:
lower_left_xy: [2584716.7894244194, 3854960.1286649713]
upper_right_xy: [2950317.3753619194, 4001444.5036649713]
Note that the shape has two heights and no width. The first one of those heights should be width.
Add more projection types, in addition to stere
and eqc
.
The map display when the projection type selected is eqc
shall be improved, covering the whole world and not just Europe and Africa.
When choosing the projection type stere
, the parameters lat_0
, lon_0
an lat_ts
should be selectable, instead of fixed.
Using the generator at http://clemspace.ch/areadef/ an example of YAML syntax I get is:
saotome:
description: São Tomé and Ilhéu das Rolas
proj: eqc
ellps: WGS84
units: m
shape:
height: 565
height: 684
area_extent:
lower_left_xy: [705505.3673684598, -11606.849730014801]
upper_right_xy: [761962.8868997098, 56752.52526998521]
Trying to read this using python -c 'import yaml, sys; print(yaml.safe_load(sys.stdin))' < areas.yaml
results in a ScannerError
:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/__init__.py", line 162, in safe_load
return load(stream, SafeLoader)
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/__init__.py", line 114, in load
return loader.get_single_data()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/constructor.py", line 41, in get_single_data
node = self.get_single_node()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 36, in get_single_node
document = self.compose_document()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 55, in compose_document
node = self.compose_node(None, None)
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 133, in compose_mapping_node
item_value = self.compose_node(node, item_key)
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 84, in compose_node
node = self.compose_mapping_node(anchor)
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/composer.py", line 127, in compose_mapping_node
while not self.check_event(MappingEndEvent):
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/parser.py", line 98, in check_event
self.current_event = self.state()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/parser.py", line 428, in parse_block_mapping_key
if self.check_token(KeyToken):
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/scanner.py", line 116, in check_token
self.fetch_more_tokens()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/scanner.py", line 223, in fetch_more_tokens
return self.fetch_value()
File "/media/nas/x21324/miniconda3/envs/py37e/lib/python3.7/site-packages/yaml/scanner.py", line 579, in fetch_value
self.get_mark())
yaml.scanner.ScannerError: mapping values are not allowed here
in "<stdin>", line 3, column 9
Comparing with satpy
-builtin areas.yaml
files, it appears there should be a line projection:
immediately below the line starting with description:
. If I add such a line, the YAML syntax appears correct (I can read it with pyresample.area_config.load_area
).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.