質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • Python 3.x

    6384questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

basemapにおける『cyl projection cannot cross pole』のエラーの対処

受付中

回答 0

投稿

  • 評価
  • クリップ 0
  • VIEW 274

R.Shigemori

score 1792

前提・実現したいこと

取得したデータを地図上にプロットしたくbasemapのインストールを行いました。
インストールできていることを確認するため、単純に日本地図を描画するコードを実行したところ、『cyl projection cannot cross pole』というエラーが出ました。

発生している問題・エラーメッセージ

ValueError                                Traceback (most recent call last)
<ipython-input-6-d7b0840e2c1b> in <module>()
      6 
      7 # Basemapの定義
----> 8 m = Basemap(llcrnrlat=south,urcrnrlat=north, llcrnrlon=west,urcrnrlon=east,resolution='h')
      9 # 海岸線を引く
     10 m.drawcoastlines()

C:\Users\9047247\AppData\Local\Continuum\Anaconda3\lib\site-packages\mpl_toolkits\basemap\__init__.py in __init__(self, llcrnrlon, llcrnrlat, urcrnrlon, urcrnrlat, llcrnrx, llcrnry, urcrnrx, urcrnry, width, height, projection, resolution, area_thresh, rsphere, ellps, lat_ts, lat_1, lat_2, lat_0, lon_0, lon_1, lon_2, o_lon_p, o_lat_p, k_0, no_rot, suppress_ticks, satellite_height, boundinglat, fix_aspect, anchor, celestial, round, epsg, ax)
   1107         if self.resolution is not None:
   1108             self.coastsegs, self.coastpolygontypes =\
-> 1109             self._readboundarydata('gshhs',as_polygons=True)
   1110             # reformat for use in matplotlib.patches.Polygon.
   1111             self.coastpolygons = []

C:\Users\9047247\AppData\Local\Continuum\Anaconda3\lib\site-packages\mpl_toolkits\basemap\__init__.py in _readboundarydata(self, name, as_polygons)
   1239         if containsPole and\
   1240             self.projection in _cylproj + _pseudocyl + ['geos']:
-> 1241             raise ValueError('%s projection cannot cross pole'%(self.projection))
   1242         # make sure some projections have has containsPole=True
   1243         # we will compute the intersections in stereographic

ValueError: cyl projection cannot cross pole


うまく描画用データが読み込めていないような感じがしますが、わかりません。

該当のソースコード

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import _geoslib
from mpl_toolkits.basemap import Basemap

# 緯度経度で範囲を指定する
north = 46.
south = 30.
east = 147.
west = 128.

# Basemapの定義
m = Basemap(llcrnrlat=south,urcrnrlat=north, llcrnrlon=west,urcrnrlon=east,resolution='h')
# 海岸線を引く
m.drawcoastlines() 

補足情報(言語/FW/ツール等のバージョンなど)

os  : windows(32bit)
python : 3.6.1
basemap: 1.1.0

basemapのインストールはhttp://www.lfd.uci.edu/~gohlke/pythonlibs/より該当するwhlファイルをダウンロードしてpipで行いました。
また、basemapの前提となるpyprojのインストールは、Anaconda Navigatorから行いました。
(versionは1.9.5.1です)

確認したことなど

stackoverflowを検索しましたが、検索の仕方が悪いのか解決策を見つけることが出来ませんでした。
別のPCのwindows(32bit)+python3.5+basemap1.1.0は、うまく動いています。また、windows(64bit)+python3.6+basemap1.1.0も同様にうまく動いています。python3.5にすれば対応できることはわかっているのですがinstall資源がなく不可能な状態です。
以前に描画解像度(resolution='h')を指定したところ『データをアップデートしろ』という主旨のエラーメッセージが出たことがあるので、同じことをすればいいかもと思いつつ、当時に行ったことを記録しておらず試すことができていません。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.51%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    クラス型配列のフィールドにアクセスしたいです。

    前提・実現したいこと サイコロが同じかどうかをチェックするプログラムです。 サイコロがn個与えられ、サイコロ各面に任意の数字が割り振られます。 サイコロDiceは_d[6]を

  • 受付中

    UnicodeDecodeError: 'utf-8' codec can't decode byt...

    UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 100-101: illegal cp932 su

  • 解決済

    pythonのスライスについて

    a = b[:,0] このようなコードがあったとき、どのようなことがおこなわれますか? bはこのコードがなりたつ何かだとすると なにだったら成り立ちますか? すみません、間

  • 解決済

    python-shogiの使い方

    python3(anaconda)にpython-shogiモジュールを入れて shogi.CSAを使いたいのですがエラーがでて使えません。どのようにすればよいのでしょうか sho

  • 解決済

    データフレームの各行に関数を適用したい

    いつもお世話になります。 データフレームの操作方法について皆様のお知恵を拝借いただけないでしょうか。 前提・実現したいこと 目標としては、データフレーム上のデータを関数で演算し

  • 解決済

    Python 3.x 辞書のキー値によって変換する場合の高速化

    Pythonにて、辞書(dict({key,value})を使って、list型の全要素をValue値に変換する際の、 高速化が可能かどうかをご教授いただきたいです。 dict1

  • 解決済

    python str型からのfloat型への変換

    csvから読み込んできたデータをstrからfloatに変更したいのですが,以下のエラーが出てしまい変換できません. ValueError('could not convert

  • 受付中

    AttributeErrorについて質問です。

     前提・実現したいこと ディープラーニングについて勉強したいと思い公開されていたプログラム(MNISTデータの正解数と正解率を出すプログラム)を実際に動かそうとしてみたら以下のエラ

同じタグがついた質問を見る

  • Python 3.x

    6384questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。