Несоответствие полярной проекции береговых линий (SouthPolarStereo) и данных (EASE/Stereographic)Python

Программы на Python
Anonymous
 Несоответствие полярной проекции береговых линий (SouthPolarStereo) и данных (EASE/Stereographic)

Сообщение Anonymous »

Я пытаюсь построить график данных о солености Южного океана на основе сетки EASE (равновеликой стереографической сетки с центром -90°) с помощью Cartopy, но сталкиваюсь с несоответствием масштабирования: при построении береговые линии кажутся немного больше, чем поле данных.
Набор данных изначально был преобразован в сетку с использованием pyFlux и должен соответствовать проекции EASE для южного полушария.
Когда я открываю тот же файл в Береговые линии Panoply идеально сочетаются друг с другом.

Код: Выделить всё

import cartopy.crs as ccrs
import matplotlib.pyplot as plt
from pyFlux_test import (
load_data_variables,
batch_regrid_all
)

data_dict = {
'sss': '/Users/andre/.spyder-py3/ICM/merged.nc',
}

times = ['2017-01-01', '2017-12-31']
datasets = load_data_variables(data_dict, times=times, depths=0)

ds = batch_regrid_all(datasets, 'sss', ease=True)

#Cartopy projection

proj = ccrs.SouthPolarStereo()
data_crs = ccrs.Stereographic(central_latitude=-90)

fig = plt.figure(figsize=(8,8))
ax = plt.axes(projection=proj)

ax.coastlines(resolution='110m', color='black')
ax.gridlines(draw_labels=False)

sal = ds['sss'].isel(time=0)

sal.plot(ax=ax, transform=data_crs, cmap='turbo',
cbar_kwargs={'label': 'SSS [psu]'}, vmin=33, vmax=36.5)

ax.set_extent([-180, 180, -90, -35], ccrs.PlateCarree())
plt.title(f"Salinidad Superficial (SSS) — {str(ds.time.values[0])[:10]}")
plt.show()
Вопросы:
Как я могу убедиться, что данные и карта используют один и тот же масштаб для полярной стереографической проекции с центром -90°?
Есть ли способ определить экземпляр ccrs.Projection, который точно соответствует определению EASE-сетки?
Может ли эта проблема быть связана с различными моделями Земли по умолчанию (Глобус) или параметры прогноза?
Заранее благодарим за любую информацию!

Подробнее здесь: https://stackoverflow.com/questions/797 ... ata-ease-s

Вернуться в «Python»