Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Cannot plot a simple map over Africa if lon_0 is not equal to zero

Aperta
#347 4 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
matplotlib, numpy, python

Direzione di ricerca

Inizia eseguendo la riproduzione Basemap fornita con l’ambiente Python, matplotlib e numpy indicato, confrontando lon_0=21 con lon_0=0 e gli esempi aeqd e laea. Non vengono indicati file sorgente o test; il lavoro è completato quando il pcolormesh globale è posizionato correttamente sulla mappa per valori di lon_0 diversi da zero senza compromettere le altre proiezioni.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

This might be related to https://github.com/matplotlib/basemap/issues/183
I have a quite simple global 0.1 degree image that I would like to put onto a map. The code for reproducing the problem is the following.

    m = Basemap(width=12000000, height=8000000,
                resolution='l', projection='stere',
                lat_ts=0, lat_0=0, lon_0=21.)
    # m = Basemap(width=9000000, height=9000000,
    #             projection='aeqd', lat_0=0, lon_0=1)
    lons = np.arange(-179.95, 180.01, 0.1)
    lats = np.arange(-89.95, 90.01, 0.1)
    data = np.random.random((1800, 3600))
    lons, lats = np.meshgrid(lons, lats)
    x, y = m(lons, lats)
    m.pcolormesh(x, y, data,
                 latlon=False, cmap='RdBu')
    # m.imshow(np.flipud(anom)[1500:2470,600:1200])
    m.drawcoastlines()
    m.drawcountries()
    plt.show()

The result is the following:
basemap-stere_lon_0 21

Changing lon_0 from 21 to 0 gives the following:
basemap-stere_lon_0 0

I've also tried this with aeqd and laea projections with the same results.

conda environment for testing
name: test_basemap
channels:
- !!python/unicode
  'defaults'
- !!python/unicode
  'conda-forge'
dependencies:
- !!python/unicode
  'basemap=1.0.7=np112py27_0'
- !!python/unicode
  'cairo=1.14.8=0'
- !!python/unicode
  'cycler=0.10.0=py27_0'
- !!python/unicode
  'dbus=1.10.10=0'
- !!python/unicode
  'expat=2.1.0=0'
- !!python/unicode
  'fontconfig=2.12.1=3'
- !!python/unicode
  'freetype=2.5.5=2'
- !!python/unicode
  'functools32=3.2.3.2=py27_0'
- !!python/unicode
  'geos=3.5.0=0'
- !!python/unicode
  'glib=2.50.2=1'
- !!python/unicode
  'gst-plugins-base=1.8.0=0'
- !!python/unicode
  'gstreamer=1.8.0=0'
- !!python/unicode
  'icu=54.1=0'
- !!python/unicode
  'jpeg=9b=0'
- !!python/unicode
  'libffi=3.2.1=1'
- !!python/unicode
  'libgcc=5.2.0=0'
- !!python/unicode
  'libiconv=1.14=0'
- !!python/unicode
  'libpng=1.6.27=0'
- !!python/unicode
  'libxcb=1.12=1'
- !!python/unicode
  'libxml2=2.9.4=0'
- !!python/unicode
  'matplotlib=2.0.0=np112py27_0'
- !!python/unicode
  'mkl=2017.0.1=0'
- !!python/unicode
  'numpy=1.12.1=py27_0'
- !!python/unicode
  'openssl=1.0.2k=1'
- !!python/unicode
  'pcre=8.39=1'
- !!python/unicode
  'pip=9.0.1=py27_1'
- !!python/unicode
  'pixman=0.34.0=0'
- !!python/unicode
  'pycairo=1.10.0=py27_0'
- !!python/unicode
  'pyparsing=2.1.4=py27_0'
- !!python/unicode
  'pyqt=5.6.0=py27_2'
- !!python/unicode
  'python=2.7.13=0'
- !!python/unicode
  'python-dateutil=2.6.0=py27_0'
- !!python/unicode
  'pytz=2016.10=py27_0'
- !!python/unicode
  'qt=5.6.2=3'
- !!python/unicode
  'readline=6.2=2'
- !!python/unicode
  'setuptools=27.2.0=py27_0'
- !!python/unicode
  'sip=4.18=py27_0'
- !!python/unicode
  'six=1.10.0=py27_0'
- !!python/unicode
  'sqlite=3.13.0=0'
- !!python/unicode
  'subprocess32=3.2.7=py27_0'
- !!python/unicode
  'tk=8.5.18=0'
- !!python/unicode
  'wheel=0.29.0=py27_0'
- !!python/unicode
  'zlib=1.2.8=3'
prefix: !!python/unicode '/home/cpa/.pyenv/versions/miniconda-3.16.0/envs/test_basemap'
Lingua principale
Python
Stelle
817
Fork
395
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di matplotlib/basemap

Tutte le issue di matplotlib/basemap

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.