matplotlib for c++出现以下错误:“PyObject\u CallObject”:函数不接受3个参数

2024-03-29 12:37:30 发布

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

我已经安装了microsoft visual studio 2019,并使用nuget为其安装了matplotlib,但是当我要生成此代码时:

#include "matplotlibcpp.h"
namespace plt = matplotlibcpp;
int main() {
    plt::plot({ 1,3,2,4 });
    plt::show();
}

它给出了这个错误:'PyObject_CallObject': function does not take 3 arguments

这是生成输出:

1>------ Build started: Project: ConsoleApplication3, Configuration: Debug Win32 ------
1>ConsoleApplication3.cpp
1>C:\Users\matthijs\source\repos\ConsoleApplication3\packages\matplotlib-cpp.1.1.0.92\include\matplotlibcpp\imshow.h(58,21): error C2660: 'PyObject_CallObject': function does not take 3 arguments
1>C:\Users\matthijs\source\repos\ConsoleApplication3\packages\matplotlib-cpp.1.1.0.92\sandbox\include\abstract.h(363,29): message : see declaration of 'PyObject_CallObject'
1>C:\Users\matthijs\source\repos\ConsoleApplication3\packages\matplotlib-cpp.1.1.0.92\include\matplotlibcpp\imshow.h(58,40): message : 'PyObject_CallObject': function declaration must be available as none of the arguments depend on a template parameter
1>Done building project "ConsoleApplication3.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

以及全部错误:


Severity    Code    Description Project File    Line    Suppression State   Suppression State
Error   C2660   'PyObject_CallObject': function does not take 3 arguments   ConsoleApplication3 C:\Users\matthijs\source\repos\ConsoleApplication3\packages\matplotlib-cpp.1.1.0.92\include\matplotlibcpp\imshow.h  58      

如何解决这个问题? 我使用nuget安装matplotlib的最新版本

错误发生在这里: PyObject* res = PyObject_CallObject(detail::_interpreter::get().s_python_function_imshow, plot_args, kwargs); 我有一台windows10笔记本电脑,我使用python3.7


Tags: sourceincludematplotlibpackagesfunctionpltargumentsusers