[英]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.