qt c++调用python的matplotlib脚本

1 篇文章 0 订阅

目的:qt调用python 的脚本,实现绘制3d曲线的功能

1. 需安装的软件

64位和32位机器上均可安装如下的软件)

 


 

2. 环境变量

Path变量中添加:

添加变量Pythonpath

值:

D:\Python27;D:\Python27\Lib;D:\Python27\DLLs

3. Pro文件中添加:

 

INCLUDEPATH += D:\Python27\include

LIBS += D:\libpython27.a

4. .cpp文件中添加:

 

#include "python.h"

 

5. 调用代码

    Py_Initialize();

 

    PyRun_SimpleString("import matplotlib as mpl\n"

                       "import numpy as np\n"

                       "import matplotlib.pyplot as plt\n"

                       "from mpl_toolkits.mplot3d import Axes3D\n"

                       "\n"

                       "mpl.rcParams['legend.fontsize'] = 10\n"

                       "\n"

                       "fig = plt.figure()\n"

                       "ax = fig.gca(projection='3d')\n"

                       "theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)\n"

                       "z = np.linspace(-2, 2, 100)\n"

                       "r = z**2 + 1\n"

                       "x = r * np.sin(theta)\n"

                       "y = r * np.cos(theta)\n"

                       "ax.plot(x, y, z, label='parametric curve')\n"

                       "ax.legend()\n"

                       "\n"

                       "plt.show()\n");

 

Py_Finalize();

运行如上代码:

 


 

注:

调试状态下运行会输出如下错误:

Traceback (most recent call last):

File "<string>", line 4, in <module>

ImportError: No module named mpl_toolkits.mplot3d

 

可以直接运行编译出来的exe程序!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值