GenericMappingTools / GenericMappingTools/pygmt

Figure.barb: Plot wind barbs in 2-D and 3-D

Offen
#4,232 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
feature request help wanted
Vorherrschende Sprache
Python
Sterne
874
Forks
255
Ø Merge
1 T. 21 Std.
Gemergte PRs (30 T.)
40

Beschreibung

*This issue serves as the central place for discussing and tracking the implementation of the `Figure.barb()` method in PyGMT. The issue will be closed when the initial implementation is complete. Progress is tracked at https://github.com/orgs/GenericMappingTools/projects/3.*

**Example**

_input data_: [barbs_strength.txt](https://github.com/user-attachments/files/23842112/barbs_strength.txt), [barbs_direction.txt](https://github.com/user-attachments/files/23842102/barbs_direction.txt)

```python

import pygmt

pen_barb = "0.5p,darkorange"
fill_barb = "brown"

fig = pygmt.Figure()
fig.basemap(region=[-5, 5] * 2, projection="X10c", frame=0)

for barbs_data, use_word in zip(
["barbs_strength.txt", "barbs_direction.txt"], [1, 0]
):
with pygmt.clib.Session() as session:
session.call_module(
'barb',
'{} \
-W{} \
-G{} \
-Q{}' \
.format(barbs_data, pen_barb, fill_barb, '0.5c')
)
fig.text(barbs_data, offset="0c/-0.05c", justify="TC", font="5p", use_word=use_word)
fig.show()
```

Image

## Documentation

- GMT: https://docs.generic-mapping-tools.org/dev/supplements/windbarbs/barb.html
- GMT.jl: https://www.generic-mapping-tools.org/GMTjl_doc/documentation/modules/.html
- PyGMT: https://www.pygmt.org/dev/api/generated/.html

## GMT Option Flags and Modifieres

☑️: *Implemented*; ⬜: *To be implemented/discussed*; ~~Strikethrough~~: *Won't implement*.

- [ ] `-R`: `region` #XXX
- [ ] `-J`: `projection` #XXX
- [ ] `-B`: `frame`
- [ ] `-G`: ` fill`
- [ ] `-W`: `pen`
- [ ] `-Q`:
- [ ] `-C`: `cmap`
- [ ] `-D`:
- [ ] `-I`:
- [ ] `-N`: `no_clip`
- [ ] ~~`-U`~~: Use `Figure.timestamp` instead.
- [ ] ~~`-X`/`-Y`~~: Use `Figure.shift_origin` instead.
- [ ] ~~`--PAR=value`~~: Use `pygmt.config` instead.

## Notes on Input Formats

*Add any notes on the input formats, especially the meaning of columns.*

## Linked Pull Requests

- [ ] Initial feature implementation #XXX
- [ ] Add a tutorial or gallery example

## Related Issues and Discussions

*Add links to related wrapper discussions, API design threads, or upstream GMT changes here.*

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit dem Einstiegspunkt Figure.barb und der verlinkten GMT-barb-Dokumentation und verwende die Beispieldateien für Eingaben sowie die Options-Checkliste, um den Umfang des Wrappers abzubilden. Erledigt ist die Aufgabe, wenn eine erste PyGMT-Implementierung die genannten Anforderungen für das Plotten von 2-D- und 3-D-Wind-barbs sowie die dokumentierten Optionen unterstützt und das Tutorial- oder Gallery-Beispiel als nachzuverfolgende Arbeit erfasst ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
data-visualization
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.