Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.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 sympy 1.0的matplotlib的正确版本是什么?_Python_Matplotlib_Sympy - Fatal编程技术网

Python sympy 1.0的matplotlib的正确版本是什么?

Python sympy 1.0的matplotlib的正确版本是什么?,python,matplotlib,sympy,Python,Matplotlib,Sympy,我试图在Pycharm中使用Sympy(1.0)的plot模块,但遇到如下错误。我猜这是由于matplotlib(2.0.2)和Sympy(1.0)之间的版本不兼容造成的。有人有线索吗?提前谢谢~ Traceback (most recent call last): File "/home/leizh/PycharmProjects/Learn_python/Smoothness_Bilinear_Quadrilateral_Elmt.py", line 49, in <module&

我试图在Pycharm中使用Sympy(1.0)的plot模块,但遇到如下错误。我猜这是由于matplotlib(2.0.2)和Sympy(1.0)之间的版本不兼容造成的。有人有线索吗?提前谢谢~

Traceback (most recent call last):
  File "/home/leizh/PycharmProjects/Learn_python/Smoothness_Bilinear_Quadrilateral_Elmt.py", line 49, in <module>
    plot_parametric(cos(u),sin(u),(u,-5,5))
  File "/home/leizh/.local/lib/python3.5/site-packages/sympy/plotting/plot.py", line 1415, in plot_parametric
    plots.show()
  File "/home/leizh/.local/lib/python3.5/site-packages/sympy/plotting/plot.py", line 184, in show
    self._backend = self.backend(self)
  File "/home/leizh/.local/lib/python3.5/site-packages/sympy/plotting/plot.py", line 1056, in __new__
    return MatplotlibBackend(parent)
  File "/home/leizh/.local/lib/python3.5/site-packages/sympy/plotting/plot.py", line 868, in __init__
    self.cm = self.matplotlib.cm
AttributeError: 'NoneType' object has no attribute 'cm'

我已经能够用matplotlib 2.0.2、sympy 1.0和python 3.4.6重现您的问题。但是,使用matplotlib 2.0.2、sympy 1.0和python 3.5.3可以很好地工作。请注意,我使用的是不同的计算机,但每次都使用全新的虚拟环境。所以这里不应该有其他问题。我建议升级到python 3.5.x

今后,请提供一个“最小”的工作示例,再现您的错误,例如:

import sympy as sym

u = sym.symbols('u')

sym.plotting.plot(sym.sin(u), (u,-5,5))

编辑:两台计算机之间存在差异:一台使用qt4agg后端(不工作),另一台使用tkagg(工作)。因此,在Symphy和matplotlib中使用哪个后端似乎存在问题。

我已经能够重现matplotlib 2.0.2、Symphy 1.0和python 3.4.6中的问题。但是,使用matplotlib 2.0.2、sympy 1.0和python 3.5.3可以很好地工作。请注意,我使用的是不同的计算机,但每次都使用全新的虚拟环境。所以这里不应该有其他问题。我建议升级到python 3.5.x

今后,请提供一个“最小”的工作示例,再现您的错误,例如:

import sympy as sym

u = sym.symbols('u')

sym.plotting.plot(sym.sin(u), (u,-5,5))

编辑:两台计算机之间存在差异:一台使用qt4agg后端(不工作),另一台使用tkagg(工作)。因此,在Symphy和matplotlib中使用哪个后端似乎存在问题。

您看到这个问题了吗?在python 3.5.3、matplotlib 2.0.2和sympy 1.0中使用全新的虚拟环境时,工作仍然顺畅
sympy.plotting.plot\u参数化(sympy.cos(u),sympy.sin(u),(u,-5,5))
在我的屏幕上呈现一个漂亮的圆。也许你在pycharm中遇到了一个bug?我想发布代码中重现错误的相关部分会有所帮助。谢谢你的帮助。我刚刚添加了原始代码。执行之后,问题就出现在文件symy.plot.py的行上:
self.matplotlib=import\u module('matplotlib','uuu import\uu kwargs={'fromlist':['pyplot','cm','collections']},min\u module u version='1.1.0',catch=(RuntimeError,)
。它无法导入模块matplotlib。所以我理解它为什么会产生错误,但仍然不知道如何修复它。通过安装python3tk包解决了这个问题。您看到这个问题了吗?在python 3.5.3、matplotlib 2.0.2和sympy 1.0中使用全新的虚拟环境时,工作仍然顺畅
sympy.plotting.plot\u参数化(sympy.cos(u),sympy.sin(u),(u,-5,5))
在我的屏幕上呈现一个漂亮的圆。也许你在pycharm中遇到了一个bug?我想发布代码中重现错误的相关部分会有所帮助。谢谢你的帮助。我刚刚添加了原始代码。执行之后,问题就出现在文件symy.plot.py的行上:
self.matplotlib=import\u module('matplotlib','uuu import\uu kwargs={'fromlist':['pyplot','cm','collections']},min\u module u version='1.1.0',catch=(RuntimeError,)
。它无法导入模块matplotlib。所以我理解它为什么会产生错误,但仍然不知道如何修复它。通过安装python3 tk包解决了这个问题。感谢您的帮助。这个问题在我的计算机上通过安装python3tk包得到了解决。使用matplotlib的后端是正确的。因此,Symphy和Matplotlib之间的兼容性不是问题。也许我需要更改问题的标题…谢谢你的帮助。这个问题在我的计算机上通过安装python3tk包得到了解决。使用matplotlib的后端是正确的。因此,Symphy和Matplotlib之间的兼容性不是问题。也许我需要更改问题的标题。。。