Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Microsoft Planetary Computer Pro inclui uma ferramenta de mosaico que pode ser usada para visualizar alguns recursos NetCDF.
Verifique a visualizabilidade do NetCDF
Nem todos os conjuntos de dados NetCDF que podem ser integrados no Planetary Computer Pro da Microsoft são compatíveis com o tiler de visualização do Planetary Computer Pro. Um conjunto de dados deve ter eixos X e Y, coordenadas de latitude e longitude e dimensões e limites espaciais a serem visualizados. Por exemplo, um conjunto de dados no qual latitude e longitude são variáveis, mas não coordenadas, não é compatível com o tiler do Planetary Computer Pro.
Antes de tentar visualizar seu conjunto de dados NetCDF, você pode usar o seguinte para verificar se ele atende aos requisitos.
Instalar as dependências necessárias
pip install xarray[io] rioxarray cf_xarrayExecute a seguinte função:
import xarray as xr import cf_xarray import rioxarray def is_dataset_visualizable(ds: xr.Dataset): """ Test if the dataset is compatible with the Planetary Computer tiler API. Raises an informative error if the dataset is not compatible. """ if not ds.cf.axes: raise ValueError("Dataset does not have CF axes") if not ds.cf.coordinates: raise ValueError("Dataset does not have CF coordinates") if not {"X", "Y"} <= ds.cf.axes.keys(): raise ValueError(f"Dataset must have CF X and Y axes, found: {ds.cf.axes.keys()}") if not {"latitude", "longitude"} <= ds.cf.coordinates.keys(): raise ValueError("Dataset must have CF latitude and longitude coordinates, " f"actual: {ds.cf.coordinates.keys()}") if ds.rio.x_dim is None or ds.rio.y_dim is None: raise ValueError("Dataset does not have rioxarray spatial dimensions") if ds.rio.bounds() is None: raise ValueError("Dataset does not have rioxarray bounds") left, bottom, right, top = ds.rio.bounds() if left < -180 or right > 180 or bottom < -90 or top > 90: raise ValueError("Dataset bounds are not valid; they must be within [-180, 180] and [-90, 90]") if ds.rio.resolution() is None: raise ValueError("Dataset does not have rioxarray resolution") if ds.rio.transform() is None: raise ValueError("Dataset does not have rioxarray transform") print("✅ Dataset is compatible with the Planetary Computer tiler API.")