dens という xarray データセットがあり、それをプロットしたいと考えています。
これはデータセットです:
リーリーコマンドを使用しています
リーリーでプロットしてうまくいきましたが、海岸線もプロット上にプロットしたかったので、
も使ってみました。 リーリーしかし、すべてのコマンドを実行してから plt.show()
を実行すると、等高線図が消え、海岸線だけが表示されます。
同じ海岸線マップ内で等高線マップを取得するには、この問題を解決するにはどうすればよいですか?
これが愚かな質問だったら申し訳ありませんが、私は Python の初心者です
###ご協力いただきありがとうございます、###ユタム
編集:今気づきましたが、2 つの異なる「ツールキット」を組み合わせようとしていて、ベースマップ ツールキットだけを使用してこれらすべてを行うことができますが、 を記述しようとしているだけです。 リーリー で次のエラーが表示されます:
リーリー 別の編集:さらに発見を続け、ベースマップのドキュメントを読んだ後、コマンドの構文は次のようにすべきであることに気付きました
m.contourf(dens.lon.values,dens.lat.values,dens.density.values[-1,:,:]);
しかし、今度は次のエラーが発生します:
これは密度配列が 2D であるためだと思いますが、そこから密度値を抽出するにはどうすればよいですか?実際には最後の時間ステップのみが必要なので、時間ディメンションで [-1] を使用しています。
改めてよろしくお願いいたします。 ヨタム
最終編集
これは最後のプロットです。周囲の土地を紫ではなく灰色にするにはどうすればよいですか?また、データを台無しにすることなく、もう少し広い地理的領域を記述する方法はありますか?
実際のデータの新しい数値は次のとおりです正解
リーリー 上記のコードは動作するはずです。 私は cartopy を使用して、海岸線や国境などのフィーチャを処理します。以下は、データセットを使用してみるための実用的なコード スニペットです。 一个> リーリー
最終編集すべての紫 (ゼロ) を白に設定するには、次の cmap を使用できます。
以上がmatplotlib.pyplot.contourf を使用して密度配列をプロットする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。