ubuntu下C++调用matplotlibcpp进行画图(超详细)

目录

一、换源

二、安装必要的软件

三、下载matplotlibcpp

四、下载anaconda

1.anaconda下载

2.使用anaconda配置环境

五、下载CLion

1.下载解压CLion

2.替换jbr文件夹 

3.安装CLion 

4.激活CLion  

5.CLion汉化

6.Clion配置

六、使用CLion运行

七、总结


我的环境:ubuntu18.04.6 LTS bionic 但是也不要需要一定是这个版本,应该是都可以用的

一、换源

如果你还没有换源,下载速度会非常慢,可以使用下面代码跟着换源

(感谢小鱼大佬提供 他的官网https://fishros.com/)

wget http://fishros.com/install -O fishros && . fishros

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第1张图片

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第2张图片

二、安装必要的软件

在 Ubuntu 上,你需要安装 python-matplotlib 包,该包包含 matplotlib 库,以及 python3-dev 包,其中包括必要的头文件。可以使用以下命令安装:

sudo apt-get update
sudo apt-get install python-matplotlib python3-dev

如果有yes/no  输入y即可。 

三、下载matplotlibcpp

需要安装matplotlibcpp,下载地址为https://github.com/lava/matplotlib-cpp

ubuntu系统可以直接使用代码安装,如下代码,我这里是直接在home目录下安装的

git clone https://mirror.ghproxy.com/https://github.com/lava/matplotlib-cpp.git

这里使用了github代理下载,国内速度会快一点 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第3张图片

四、下载anaconda

1.anaconda下载

这里下载anaconda会方便一点,如果你自己的环境十分了解,也可以不用下载,我是笨蛋我选择下载,注意选择linux版本,链接:Free Download | Anaconda(anaconda可以配置python环境)

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第4张图片

下载好,找到路径执行下面命令(注意要执行你的版本!

bash Anaconda3-2023.09-0-Linux-x86_64.sh

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第5张图片

执行后,一直按回车,直到问你yes还是no,选择yes 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第6张图片

问你是否安装在这个目录,建议安装,直接按回车,开始安装(大概5分钟,请耐心等待,等下还有问题,不要乱按)

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第7张图片

他现在询问是否anaconda加入环境变量 ,选择yes添加,不然后面很麻烦

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第8张图片

输入后,就下载完成了,打开安装好的anaconda目录终端

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第9张图片

 下载好了anaconda,打开终端默认的是其base环境,有时并不常用的话会比较麻烦,可以使用如下代码设置默认终端打开时之前的环境

conda config --set auto_activate_base false

使用以下代码进入base环境。(代码知道就好,现在不用操作

conda activate

也可以使用代码退出base环境(代码知道就好,现在不用操作

conda deactivate

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第10张图片

2.使用anaconda配置环境

使用下面代码在终端运行(询问y/n  选择y)

conda create --name forcppEnvs python==3.10

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第11张图片

这里我们要先选择进入forcppEnvs环境,如下代码

conda activate forcppEnvs

前面会多刚刚我们设置的forcppEnvs环境

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第12张图片

添加镜像源方便我们后续下载

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/

 我这里已经安装好了,所以写的already。ubuntu下C++调用matplotlibcpp进行画图(超详细)_第13张图片

进入anaconda/envs/fdrcppEnvs里面运行下面两个代码,安装numpy库和matplotlib库

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib

图片如下,安装完毕。 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第14张图片

五、下载CLion

1.下载解压CLion

点击下载,注意查看是否为linux CLion Linux

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第15张图片

解压文件,先要打开你下载的目录,还要注意后面的CLion是你下载的文件,用tab可以补齐

tar -xzf CLion-2023.2.2.tar.gz

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第16张图片

2.替换jbr文件夹 

jetbrains全家桶在Ubuntu中使用会出现输入法不跟随的问题,需要将源文件中的jbr文件夹替换来解决

先在github上下载好别人重新编译过的jbr文件

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第17张图片ubuntu下C++调用matplotlibcpp进行画图(超详细)_第18张图片

如果很慢也可以复制链接到windows迅雷下载,在复制到虚拟机中。 

下载好解压,对压缩包右击-》提取到此处,或者之前的命令行解压,解压完毕更名为jbr

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第19张图片

复制jbr到clion文件夹中,选择全部合并和替换 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第20张图片

3.安装CLion 

我比较喜欢把他放到home目录,使用下面代码移动到home目录 

mv clion-2023.2.2/ ~
cd ~
cd clion-2023.2.2/bin/
sh clion.sh 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第21张图片

4.激活CLion  

需要激活可以直接买,或者点击试一试。

5.CLion汉化

新建项目进入

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第22张图片

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第23张图片

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第24张图片

装好之后重新点击restart重新启动

这里选择创建桌面条目,方便我们后面打开(不需要每次都sh clion.sh)

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第25张图片

6.Clion配置

在设置里面查看

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第26张图片

运行如下代码安装C和C++编译器

sudo apt-get update

sudo apt-get install build-essential

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第27张图片

六、使用CLion运行

编辑CMakeLists.txt,代码如下  

注意下面代码的路径如“/home/kangkang/anaconda3/envs/forcppEnvs/include/python3.10”kangkang是我自己的用户名,你需要改成自己的,下面代码三个地方都要修改,可以去命令行cd一下,验证路径是否正确。

最后一个地方需要修改的是“add_executable(test main.cpp)”中test是之前“project(test)”的名字,保证跟他一样即可,后面main.cpp是我主函数的名字

cmake_minimum_required(VERSION 3.26)  # 设置cmake最小版本3.26(我们下载的是3.27)
project(test)   # test可以随意设置(是运行的名字)

set(CMAKE_CXX_STANDARD 17) #(选择C++17)

find_package(PythonLibs REQUIRED)
#下面两句代码路径要改成你自己的
set(PYTHON_INCLUDE_DIRS /home/kangkang/anaconda3/envs/forcppEnvs/include/python3.10)
set(PYTHON_LIBRARIES /home/kangkang/anaconda3/envs/forcppEnvs/lib/libpython3.10.so)
include_directories(${PYTHON_INCLUDE_DIRS})

# 添加 Matplotlib 的头文件路径  路径改成你自己的
include_directories(/home/kangkang/matplotlib-cpp/)

add_executable(test main.cpp)

# 链接 Python 和 Matplotlib 库
target_link_libraries(test ${PYTHON_LIBRARIES})

 main.c代码如下

#include "matplotlibcpp.h"

namespace plt = matplotlibcpp;

int main() {
    plt::plot({1, 2, 3, 4});
    plt::show();

    return 0;
}

运行结果如下,终于完成啦。 

ubuntu下C++调用matplotlibcpp进行画图(超详细)_第28张图片

七、总结

文章有一点长,因为我是小白,找了很多网上的方法才完成。大佬技术很好,因此写得文章并不会那么详细,我这种小白看起来有点吃力,因此我写的尽可能详细一点,如果你遇到了什么问题,可以发到评论区,我会尽我所能帮助你。

可以点个赞吗?谢谢支持!!!


参考文章

Ubuntu下使用c++调用matplotlibcpp绘图

在读学生自学Ubuntu20.04用C++调用matplotlib历程

ubuntu下安装Clion

ubuntu下安装Anaconda3以及使用大全

你可能感兴趣的:(ubuntu,linux,运维)