Je dois mettre en œuvre une certaine parcelle comme - ça ou - tandis que dans mon application, cela peut être même quelque chose de similaire.
J'ai fait une recherche sur le site Web QT sans progrès, et j'ai vu un paquet QWT mais rien de similaire là-bas.
Des idées?
J'aime Qcustomotomot qui est une bibliothèque Qt C++. Il se concentre sur la mise en valeur des parcelles 2D de qualité, des graphiques et des graphiques de qualité de publication, ainsi que des performances élevées pour les applications de visualisation en temps réel. Vous pouvez l'obtenir ici: http://www.qcustompot.com/
J'utilise Qwt
pour cela. L'astuce consiste à utiliser une fonction étape (voir le dernier exemple par ceci link ) et déplacez les données de 0,5, de sorte que les barres seront centrées sur les tiques. Voici un exemple de ce que vous pouvez obtenir avec Alpha Blending et anti-aliasing activé: mon histogramme . J'espère que tu feras encore mieux ;-)
Comme alternative à QWT, vous pourriez également envisager Widget de tracé QT qui peut être une option plus simple.
Qt 5.6 Maintenant Inclus Graphiques QT 2.1 , qui prend en charge les graphiques de barres (ainsi que 7 autres types).
QT n'a aucun soutien pour la traçage de la boîte.
La solution la plus élémentaire est d'utiliser QGraphicsview . Rendez simplement votre parcelle en utilisant les différents articles.
Autre que cela, vous pouvez suivre ce fil . Il contient un couple de pointeur pour tracer des cadres, mais je ne sais pas à quel point ils sont utiles ou s'ils sont toujours pris en charge dans Qt 4.x.
QCustomPlot
est vraiment facile de commencer et il y a beaucoup de types de tracé cartésien que vous pouvez faire. Cela dit, la performance sage n'est pas aussi bonne que celle des autres disent si vous avez l'intention de parcourir de grandes séries chronologiques à la fois. Il utilise à l'interne un QMap
pour stocker les données qui signifie que pour chaque point de données que vous insérez ou supprimez lors de la collecte, il y aura une allocation/une libération de mémoire pour ajouter le point de données à la carte. Voir Ce post Pour plus d'informations.
Une autre chose que je n'aime pas, c'est que même pour les parcelles simples, il utilise à l'intérieurement une structure QCPData
qui stocke 6 valeurs doubles lorsque vous auriez normalement besoin de deux (x
et y
) . C'est-à-dire qu'il triple la quantité de mémoire que vous devez afficher une série chronologique.