“numpy.float64”对象没有“plot”属性

2024-06-28 19:51:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个非常简单的代码,但在最后我发现的问题,我无法解决或找到任何解决方案。 我画不出情节。我只得到错误属性error:'numpy.float64'对象没有属性'plot'

import pylab as p
import numpy as np
import sympy as s
import matplotlib
from random import random

X=np.arange(0,1000)
y=np.random.randint(100,size=1000)

if len(X)==len(y):
    print "ok"
else:
    print "not ok"

 polyfit=np.polyfit(X,y,6)
 poly1d=np.poly1d(polyfit)
 print poly1d


i=1
my=[]
for i in X:
    p=poly1d(i)
    my.append(p)

 print my

 p.plot(X,my)
 p.show()

我照看文档,但什么也没找到,谷歌也帮不了我。


Tags: 代码importnumpylen属性plotmyas
1条回答
网友
1楼 · 发布于 2024-06-28 19:51:03

稍后在代码中意外地重写了pylab模块,方法是将其他内容分配给p。您可以通过导入pylab并使用例如pylab.plot来避免这种情况。

还有一些缩进问题,记住缩进在Python中很重要。

通常建议使用matplotlib.pyplot,而不是使用pylab。因此,我修改了下面的代码,以便在pylab上使用pyplot。我还删除了一些不需要的代码部分,并对其进行了总体整理。

import matplotlib.pyplot as plt
import numpy as np
from random import random

X=np.arange(0,1000)
y=np.random.randint(100,size=1000)

if len(X)==len(y):
    print("ok")
else:
    print("not ok")

polyfit=np.polyfit(X,y,6)
poly1d=np.poly1d(polyfit)

my=[]
for i in X:
    p=poly1d(i)
    my.append(p)

plt.plot(X,my)
plt.show()

相关问题 更多 >