Я рассчитал гистограмму с помощью opencv и хотел бы построить двухмерный график следующим образом:
Я знаю, как построить одномерный график следующим образом:
#include "gnuplot-iostream.h
void PlotDemo()
{
Gnuplot gp;
gp << "set title 'Demo'" << std::endl;
gp << "set xlabel 'xName'" << std::endl;
gp << "set ylabel 'yName'" << std::endl;
std::vector<std::pair<double, double> > data;
for (int i = 0; i < 10; i++)
{
data.emplace_back(i, i * i);
}
gp << "plot" << gp.file1d(data) << "with lines title 'demoData'" << std::endl;
}
Я искал и обнаружил, что gnuplot может понадобиться такой параграф:
gp << "set title '2D Color Histogram for G and B'" << std::endl;
gp << "set pm3d at b" << std::endl; // with bottom
gp << "set view map" << std::endl; // view as 2D
Итак, как построить 2D-гистограмму с помощью gnuplot, встроенного в c ++?
Спасибо очень сильно.