エリア・チャートの作成
注: これはCharts with Widgets Galleryの例の一部です。
エリア・チャートを作成するには、2つのQLineSeries インスタンスが必要です。この2つのインスタンスがエリアの上下の境界を定義します。
auto series0 = new QLineSeries; auto series1 = new QLineSeries;
両方の系列にデータを追加し、stream演算子を使います。
*series0 << QPointF(1, 5) << QPointF(3, 7) << QPointF(7, 6) << QPointF(9, 7) << QPointF(12, 6) << QPointF(16, 7) << QPointF(18, 5); *series1 << QPointF(1, 3) << QPointF(3, 4) << QPointF(7, 3) << QPointF(8, 2) << QPointF(12, 3) << QPointF(16, 4) << QPointF(18, 3);
次に、2つの線系列オブジェクトを使って、QAreaSeries インスタンスを作成します。カスタムグラデーションの塗りとアウトラインの幅を設定します。
auto series = new QAreaSeries(series0, series1); series->setName("Batman"); QPen pen(0x059605); pen.setWidth(3); series->setPen(pen); QLinearGradient gradient(QPointF(0, 0), QPointF(0, 1)); gradient.setColorAt(0.0, 0x3cc63c); gradient.setColorAt(1.0, 0x26f626); gradient.setCoordinateMode(QGradient::ObjectBoundingMode); series->setBrush(gradient);
最後に、QChartView インスタンスを作成し、タイトルを設定し、アンチエイリアスを設定し、領域系列を追加します。また、デフォルトの軸を作成し、その範囲を指定します。
auto chart = new QChart; chart->addSeries(series); chart->setTitle("Simple Area Chart"); chart->createDefaultAxes(); chart->axes(Qt::Horizontal).first()->setRange(0, 20); chart->axes(Qt::Vertical).first()->setRange(0, 10);
これで、チャートを表示する準備ができました。
createDefaultChartView(chart);
本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。