Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用pyplot极轴投影保存png时出现numpy错误_Python_Python 3.x_Matplotlib - Fatal编程技术网

Python 使用pyplot极轴投影保存png时出现numpy错误

Python 使用pyplot极轴投影保存png时出现numpy错误,python,python-3.x,matplotlib,Python,Python 3.x,Matplotlib,此代码(的简化版本): 导致以下错误: Traceback (most recent call last): File "so.py", line 4, in <module> plt.savefig("fig.png") File "/usr/lib/python3/dist-packages/matplotlib/pyplot.py", line 561, in savefig return fig.savefig(*args, **kwargs) F

此代码(的简化版本):

导致以下错误:

Traceback (most recent call last):
  File "so.py", line 4, in <module>
    plt.savefig("fig.png")
  File "/usr/lib/python3/dist-packages/matplotlib/pyplot.py", line 561, in savefig
    return fig.savefig(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1422, in savefig
    self.canvas.print_figure(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/backend_bases.py", line 2220, in print_figure
    **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_agg.py", line 505, in print_png
    FigureCanvasAgg.draw(self)
  File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_agg.py", line 451, in draw
    self.figure.draw(self.renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1035, in draw
    func(*args)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axes.py", line 2088, in draw
    a.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axis.py", line 1097, in draw
    tick.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axis.py", line 235, in draw
    self.gridline.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/lines.py", line 551, in draw
    tpath, affine = transf_path.get_transformed_path_and_affine()
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2562, in get_transformed_path_and_affine
    self._revalidate()
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2539, in _revalidate
    self._transform.transform_path_non_affine(self._path)
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2230, in transform_path_non_affine
    self._a.transform_path(path))
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2227, in transform_path_non_affine
    return self._a.transform_path_non_affine(path)
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2230, in transform_path_non_affine
    self._a.transform_path(path))
  File "/usr/lib/python3/dist-packages/matplotlib/projections/polar.py", line 72, in transform_path_non_affine
    ipath = path.interpolated(path._interpolation_steps)
  File "/usr/lib/python3/dist-packages/matplotlib/path.py", line 553, in interpolated
    vertices = simple_linear_interpolation(self.vertices, steps)
  File "/usr/lib/python3/dist-packages/matplotlib/cbook.py", line 1712, in simple_linear_interpolation
    result = np.zeros(new_shape, a.dtype)
TypeError: 'numpy.float64' object cannot be interpreted as an integer
回溯(最近一次呼叫最后一次):
文件“so.py”,第4行,在
plt.savefig(“图png”)
savefig中的文件“/usr/lib/python3/dist packages/matplotlib/pyplot.py”,第561行
返回图savefig(*args,**kwargs)
savefig中的文件“/usr/lib/python3/dist packages/matplotlib/figure.py”,第1422行
self.canvas.print_图(*args,**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/backend_base.py”,第2220行,如图所示
**kwargs)
文件“/usr/lib/python3/dist-packages/matplotlib/backends/backend\u agg.py”,第505行,以印刷png格式
图CAVASAGG.draw(自绘制)
文件“/usr/lib/python3/dist packages/matplotlib/backends/backend_agg.py”,绘图中第451行
self.figure.draw(self.renderer)
文件“/usr/lib/python3/dist packages/matplotlib/artist.py”,第56行,在draw_包装中
绘制(艺术家、渲染器、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/figure.py”,绘图中的第1035行
func(*args)
文件“/usr/lib/python3/dist packages/matplotlib/artist.py”,第56行,在draw_包装中
绘制(艺术家、渲染器、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/axes.py”,第2088行,在绘图中
a、 绘制(渲染器)
文件“/usr/lib/python3/dist packages/matplotlib/artist.py”,第56行,在draw_包装中
绘制(艺术家、渲染器、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/axis.py”,第1097行,在绘图中
勾选.draw(渲染器)
文件“/usr/lib/python3/dist packages/matplotlib/artist.py”,第56行,在draw_包装中
绘制(艺术家、渲染器、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/axis.py”,绘图中第235行
self.gridline.draw(渲染器)
文件“/usr/lib/python3/dist packages/matplotlib/artist.py”,第56行,在draw_包装中
绘制(艺术家、渲染器、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/lines.py”,第551行,在绘图中
t路径,仿射=变换路径。获取变换路径和仿射()
文件“/usr/lib/python3/dist packages/matplotlib/transforms.py”,第2562行,在get\u transformed\u path\u和\u affine中
自我验证()
文件“/usr/lib/python3/dist packages/matplotlib/transforms.py”,第2539行,重新验证
self.\u变换.变换路径非仿射(self.\u路径)
文件“/usr/lib/python3/dist packages/matplotlib/transforms.py”,第2230行,变换路径非仿射
自我转换路径(路径))
文件“/usr/lib/python3/dist packages/matplotlib/transforms.py”,第2227行,在transform\u path\u non\u affine中
返回自。变换路径非仿射(路径)
文件“/usr/lib/python3/dist packages/matplotlib/transforms.py”,第2230行,变换路径非仿射
自我转换路径(路径))
文件“/usr/lib/python3/dist packages/matplotlib/projections/polar.py”,第72行,变换路径非仿射
ipath=路径插值(路径插值步数)
文件“/usr/lib/python3/dist packages/matplotlib/path.py”,第553行,内插格式
顶点=简单的线性插值(self.vertices,steps)
文件“/usr/lib/python3/dist packages/matplotlib/cbook.py”,第1712行,简单线性插值
结果=np.0(新的_形状,a.d类型)
TypeError:“numpy.float64”对象不能解释为整数
崩溃的原因是使用了
projection='polar'
,因为如果没有此投影,它可以正常工作

我无法尝试显示结果,因为我正在使用没有X显示的远程Web服务器。 使用:

  • python 3.4.3
  • 14.04.5 LTS
  • matplotib 1.3.1
除matplotlib版本(1.5.1)外,完全相同的设置在不同的机器上工作。我还可以让它在python2.7中工作

我尝试将matplotlib升级到高于1.3的版本,但在apt get存储库中找不到它,
sudo pip3 install matplotlib==x.x.x
失败,并且从源代码构建


知道为什么会崩溃吗

打印实际数据时,是否也会崩溃?在其他不使用极轴的情况下,它会崩溃吗?我用您要求的信息更新了我的问题,除非您找到具有完全相同配置的人,否则很难找到这样的错误。我猜可能是不兼容(比如numpy版本对于MPL1.3来说太高了),或者是在尝试更新时被破坏了。当我试图更新一个需要numpy的包时,我通常会遇到这些问题,然后它会尝试更新numpy,尽管这个要求已经满足了。是否可以完全卸载python并从头安装所有最新版本?非常感谢您的回复。重新安装python不是我的选择。因为我发现它在Python2下没有崩溃,所以我将像这样运行它,因为在绘制实际数据时,momentDoes也会崩溃吗?在其他不使用极轴的情况下,它会崩溃吗?我用您要求的信息更新了我的问题,除非您找到具有完全相同配置的人,否则很难找到这样的错误。我猜可能是不兼容(比如numpy版本对于MPL1.3来说太高了),或者是在尝试更新时被破坏了。当我试图更新一个需要numpy的包时,我通常会遇到这些问题,然后它会尝试更新numpy,尽管这个要求已经满足了。是否可以完全卸载python并从头安装所有最新版本?非常感谢您的回复。重新安装python不是我的选择。因为我发现它在Python2下没有崩溃,所以我现在就这样运行它
Traceback (most recent call last):
  File "so.py", line 4, in <module>
    plt.savefig("fig.png")
  File "/usr/lib/python3/dist-packages/matplotlib/pyplot.py", line 561, in savefig
    return fig.savefig(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1422, in savefig
    self.canvas.print_figure(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/backend_bases.py", line 2220, in print_figure
    **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_agg.py", line 505, in print_png
    FigureCanvasAgg.draw(self)
  File "/usr/lib/python3/dist-packages/matplotlib/backends/backend_agg.py", line 451, in draw
    self.figure.draw(self.renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/figure.py", line 1035, in draw
    func(*args)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axes.py", line 2088, in draw
    a.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axis.py", line 1097, in draw
    tick.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/axis.py", line 235, in draw
    self.gridline.draw(renderer)
  File "/usr/lib/python3/dist-packages/matplotlib/artist.py", line 56, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/matplotlib/lines.py", line 551, in draw
    tpath, affine = transf_path.get_transformed_path_and_affine()
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2562, in get_transformed_path_and_affine
    self._revalidate()
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2539, in _revalidate
    self._transform.transform_path_non_affine(self._path)
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2230, in transform_path_non_affine
    self._a.transform_path(path))
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2227, in transform_path_non_affine
    return self._a.transform_path_non_affine(path)
  File "/usr/lib/python3/dist-packages/matplotlib/transforms.py", line 2230, in transform_path_non_affine
    self._a.transform_path(path))
  File "/usr/lib/python3/dist-packages/matplotlib/projections/polar.py", line 72, in transform_path_non_affine
    ipath = path.interpolated(path._interpolation_steps)
  File "/usr/lib/python3/dist-packages/matplotlib/path.py", line 553, in interpolated
    vertices = simple_linear_interpolation(self.vertices, steps)
  File "/usr/lib/python3/dist-packages/matplotlib/cbook.py", line 1712, in simple_linear_interpolation
    result = np.zeros(new_shape, a.dtype)
TypeError: 'numpy.float64' object cannot be interpreted as an integer