QGraphicsView
fa 2D tramando molto bene e ti dà molte opzioni per il modo per visualizzarlo. Non è su misura per tracciare dati scientifici fino al qwt
, ma solo per mostrare un mucchio di punti, o geometrie o animazioni e molte altre cose funziona molto bene. Vedi la documentazione e gli esempi di Qt's Graphics View Framework.
Ecco come si traccia un gruppo di punti in un QGraphicsScene
e lo si visualizza in un QGraphicsView
.
#include <QtGui/QApplication>
#include <QGraphicsView>
#include <QGraphicsScene>
#include <QPointF>
#include <QVector>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QVector <QPointF> points;
// Fill in points with n number of points
for(int i = 0; i< 100; i++)
points.append(QPointF(i*5, i*5));
// Create a view, put a scene in it and add tiny circles
// in the scene
QGraphicsView * view = new QGraphicsView();
QGraphicsScene * scene = new QGraphicsScene();
view->setScene(scene);
for(int i = 0; i< points.size(); i++)
scene->addEllipse(points[i].x(), points[i].y(), 1, 1);
// Show the view
view->show();
// or add the view to the layout inside another widget
return a.exec();
}
Nota: probabilmente vorrà chiamare setSceneRect
sulla vostra vista, altrimenti la scena sarà solo l'auto-centro di esso. Leggi le descrizioni di QGraphicsScene
e QGraphicsView
nella documentazione Qt. È possibile ridimensionare la vista per mostrare più o meno della scena e può inserire barre di scorrimento. Ho risposto a uno question correlato dove mostro di più su cosa si può fare con uno QGraphicsView
che si potrebbe voler vedere anche.
Possibile duplicato di: tracciare la trama in Qt (http://stackoverflow.com/questions/1491362/making-plot-in-qt) – yasouser