为了账号安全,请及时绑定邮箱和手机立即绑定

将 numpy 数组传递给函数给出类型错误

将 numpy 数组传递给函数给出类型错误

温温酱 2022-12-06 15:29:37
不知道为什么我在尝试绘制条形图时总是出错。 def plotBar(x,y):    plt.bar(x, y, width=1, align='center', color='plum', edgecolor='firebrick',linewidth=1)    plt.show()在 main 中,我这样调用函数:x1=np.arange(1,101)y1=np.arange(50,151)classname.plotBar(x1,y1)但是,我不断收到此错误:TypeError: plotBar() takes 2 positional arguments but 3 were given
查看完整描述

1 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

我将您的函数声明为类中的静态方法:


class Xxx:

    @staticmethod

    def plotBar(x,y):

        plt.bar(x, y, width=1, align='center', color='plum',

            edgecolor='firebrick', linewidth=1)

        plt.show()

下一个更正是两个数组的长度必须相等,所以我更改了y的定义,使其也有100 个元素:


x1 = np.arange(1,101)

y1 = np.arange(51,151)

(以前它有101个元素)。


然后我称它为:


Xxx.plotBar(x1,y1)

并得到了一张照片。


查看完整回答
反对 回复 2022-12-06
  • 1 回答
  • 0 关注
  • 159 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号