ubuntu 安装 C++ 画图库 Matplot++

Matplot++

Matplot++ 是调用gnuplot实现画图的一个C++数据显示库,其语法模仿Matplotlib,如果觉得安装较麻烦,可以下载我修改别人条件的C++头文件,只需要引入头文件即可画图。

安装

准备

gnuplot 版本 > 5.2.6

sudo apt install qtbase5-dev qtbase5-dev-tools libqt5svg5-dev qttools5-dev-tools
tar -xvzf gnuplot-5.4.4.tar.gz 
cd gnuplot-5.4.4/
./configure --with-qt=qt5
make -j
make check
sudo make install

GCC > 7.0

安装 GCC-8

sudo apt update
sudo apt install gcc-8
sudo apt install g++-8

GCC >8 时的安装方法

sudo apt install build-essential
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt install g++-10

// 修改GCC版本
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 7  # 权重
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10

// 修改GCC版本
update-alternatives --config g++
update-alternatives --config gcc

安装库

sudo apt-get install libglfw3-dev

编译

如果C++17 不是默认支持,需要指定GCC编译版本,ubuntu18.04需要指定

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-O2" -DCMAKE_C_COMPILER=/usr/bin/gcc-8 -DCMAKE_CXX_COMPILER=/usr/bin/g++-8

关闭例子与测试部分的安装

-DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF 

安装

cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-O2" -DCMAKE_C_COMPILER=/usr/bin/gcc-10 -DCMAKE_CXX_COMPILER=/usr/bin/g++-10 -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF 
sudo cmake --build . --parallel 2 --config Release
sudo cmake --install .

使用

cmakelists 引入包

find_package(Matplot++ REQUIRED)
target_link_libraries(
        <可执行目标> Matplot++::matplot
)

引入头文件

#include "matplot/matplot.h"
int main(){
	using namespace matplot;
    auto [X, Y] = meshgrid(iota(-8, .5, +8));
    auto Z = transform(X, Y, [](double x, double y) {
        double eps = std::nextafter(0.0, 1.0);
        double R = sqrt(pow(x, 2) + pow(y, 2)) + eps;
        return sin(R) / R;
    });
    mesh(X, Y, Z);
    show();	// 需要调用show才能显示
    return 0;
    
}
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值