【问题标题】:pyproj not working on ipython (but works on CLI)pyproj 不适用于 ipython(但适用于 CLI)
【发布时间】:2016-03-06 00:32:34
【问题描述】:

我在使用 IPython Notebook 时执行 pyproj 时遇到问题,但在 powershell 中使用 Python 时却没有。

IPython 抛出以下错误:

RuntimeError                              Traceback (most recent call last)
<ipython-input-59-384a2e8bfd70> in <module>()
----> 1 inproj = pyproj.Proj(init='epsg:3857')

C:\Anaconda64\lib\site-packages\pyproj\__init__.pyc in __new__(self, projparams, preserve_units, **kwargs)
    345                 else:
    346                     kvpairs.append(kvpair+' ')
--> 347             projstring = ''.join(kvpairs)
    348         # look for EPSG, replace with epsg (EPSG only works
    349         # on case-insensitive filesystems).

_proj.pyx in _proj.Proj.__cinit__ (_proj.c:1190)()

RuntimeError: Invalid argument

这个问题类似于https://github.com/jswhit/pyproj/issues/17 这里指出的问题,但我不明白代码如何在命令行上运行良好。你知道我怎样才能让pyproj 工作吗?我正在使用 Windows(64 位),conda 版本:3.18.6 和 python 版本:2.7.10。

如果有帮助,ipython notebook 上pyproj.pyproj_datadir 的输出是'C:\x07root\\stage\\Library\\share\\proj',而在命令提示符下它是'C:\\Anaconda64\\lib\\site-packages\\pyproj\\data'

谢谢!

我使用的工作示例来自https://gis.stackexchange.com/questions/78838/how-to-convert-projected-coordinates-to-lat-lon-using-python/78944#78944

from pyproj import Proj, transform

inProj = Proj(init='epsg:3857')
outProj = Proj(init='epsg:4326')
x1,y1 = -11705274.6374,4826473.6922
x2,y2 = transform(inProj,outProj,x1,y1)
print x2,y2

【问题讨论】:

  • 这是一个 bug,运行 conda update pyproj 并获取 pyproj>=1.9.5 来解决问题。

标签: python powershell ipython-notebook anaconda conda


【解决方案1】:

我在 miniconda 下的 Windows 10(64 位)中运行 Python 2.7.11 时也遇到了这个错误。我的 pyproj 版本是 1.9.4(由运行 conda list 确定)。在您提到的link 上提出了几种解决方案:

  1. 将 pyproj 从 anaconda.org 上的 JimInCO 频道降级到 v1.9.3。这对我的环境不起作用——我找不到任何合适的 v1.9.3 包。看起来那里可能有一些 Python 3 产品。
  2. 定义一个名为PROJ_DIR 的环境变量,它将pyproj 指向其投影文件的正确位置。您必须首先确定 epsg 文件的位置。
  3. 这是对我有用的解决方案。从Christoph Gohlke's site 获取一个 whl 文件,并使用pip install the_file.whl 进行安装。使用这种方法,我得到了pyproj v1.9.5,效果很好。

【讨论】:

    猜你喜欢
    • 2016-04-27
    • 2018-01-23
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 2018-01-01
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多