簡體   English   中英

如何使用 Visual Studio c++ 繪制 plot 圖表

[英]How to draw a plot chart using visual studio c++

我想使用帶有 c++ 代碼的 Visual Studio 創建一個 plot 圖表。 該圖表應基於兩個軸。 “x”軸顯示時間,“y”軸顯示數組數據。 數組數據有 100 個元素,並且在一秒鍾內讀取一個數據。 如何使用任何其他圖形庫實現代碼?

1)結帳並將Microsoft vcpkg安裝到新文件夾(請參閱此處的1步說明: https://github.com/Microsoft/vcpkg

2) vcpkg.exe 從 vcpkg 文件夾安裝 plplot

3) vcpkg.exe 集成項目將指導您將 plplot 添加到您的 MSVC 項目

4) 將此指令粘貼到 Nuget 控制台:

在此處輸入圖像描述

5)粘貼並重新加載項目后,您可以嘗試以下代碼:

#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <cstring>
#include <cmath>
#include "plplot\plstream.h"
using namespace std;
const int NSIZE = 101;
int main(int argc, char ** argv) {
    PLFLT x[NSIZE], y[NSIZE];
    PLFLT xmin = 0., xmax = 1., ymin = 0., ymax = 100.;
    int   i;
    for (i = 0; i < NSIZE; i++) {
        x[i] = (PLFLT)(i) / (PLFLT)(NSIZE - 1);
        y[i] = ymax * x[i] * x[i];
    }
    auto pls = new plstream();
    plsdev("wingcc");
    pls->init();
    pls->env(xmin, xmax, ymin, ymax, 0, 0);
    pls->lab("x", "y=100 x#u2#d", "Simple PLplot demo of a 2D line plot");
    pls->line(NSIZE, x, y);
    delete pls;
}

你得到:

在此處輸入圖像描述

在 MSVC2015 上測試

幾年前我回答了一個非常相似的問題......有一個簡單、直接且可編譯的示例: 圖形表示 - 數據分布

顯然,該圖表與您需要的圖表不同。 但是你可以修改它,以便使用 C++ 繪制任何你想要的東西,然后制作任何圖表。

在 C++ 中繪圖有點棘手,因為在任何 C++ IDE 中都沒有可用的默認繪圖庫。 但是,有許多在線庫可用於在 C++ 中進行繪圖。 一些繪圖工具,如 Gnuplot、PPlot、Matlab、Python、KoolPlot(可能足以滿足您的要求)。

幾天前我已經回答了一個類似的問題( 為 c++ 繪制 package )。 答案可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM