最近、私はxarrayを使って一連のNetCDFファイルを読み込み、カートリッジを使ってプロットしています。xarray.DataArray.rollメソッドは不要なアーティファクトを作成します
今日、私は面白いことに気付きました。関心のある分野では、20Wから40E経度のものを選択する必要があります。 lonは0から0-360までで始まるので、設計上、NCLや地理空間データ用の他の特定のツールボックスのように、1つの方法ではできません。KEdiff_mean.sel(lat=slice(-50, -10),lon=slice(-20,40))
代わりにisel(lon=slice(-200,400)
(私は3600 * 1800グローバルグリッドで作業する)を呼び出すと空のデータ配列が返され、この素晴らしいDataArray.roll
メソッドが見つかりました。
経度次元に沿ってDataArrayを圧延することによって、私はその後 KEdiff_mean.roll(lon=1800).isel(lon=slice(1600,2200)).sel(lat=slice(-50, -10))
が面白いです何、私はDataArray.plot
を使用して、それをプロットするとき、私はこの奇妙な横縞を得た0度線を越え、私が欲しい経度を選択することができます値のない領域に適用されます。ロール方式が期待どおりに動作しなかったか、何かが欠けていましたが、ストライプ以外のプロットが正しいように見えました。誰もが光を当てることはできますか?この循環経度選択を処理するための推奨される方法は何ですか?緯度経度座標を最初に0-360から-180に置き換えてデフォルトで180にすることはできますか?ありがとうございました!
これは正しいプロットである:私はプロットのグローバルその後、設定範囲をプロット
私は手動で0から360までの経度値をラップすることは確かにこの問題を解決することを疑う - それは確かです私はまず何をしようとしますか? – shoyer