Sophie

Sophie

distrib > Mageia > 7 > aarch64 > by-pkgid > bc3b37a19f14c9d212f32b1359cbcf6a > files > 499

qtcharts5-doc-5.12.6-1.mga7.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- examples-temperaturerecords.qdoc -->
  <title>Temperature Records Example | Qt Charts 5.12.6</title>
  <link rel="stylesheet" type="text/css" href="style/offline-simple.css" />
  <script type="text/javascript">
    document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css");
    // loading style sheet breaks anchors that were jumped to before
    // so force jumping to anchor again
    setTimeout(function() {
        var anchor = location.hash;
        // need to jump to different anchor first (e.g. none)
        location.hash = "#";
        setTimeout(function() {
            location.hash = anchor;
        }, 0);
    }, 0);
  </script>
</head>
<body>
<div class="header" id="qtdocheader">
  <div class="main">
    <div class="main-rounded">
      <div class="navigationbar">
        <table><tr>
<td >Qt 5.12</td><td ><a href="qtcharts-index.html">Qt Charts</a></td><td ><a href="qtcharts-examples.html">Qt Charts Examples</a></td><td >Temperature Records Example</td></tr></table><table class="buildversion"><tr>
<td id="buildversion" width="100%" align="right"><a href="qtcharts-index.html">Qt Charts | Commercial or GPLv3</a></td>
        </tr></table>
      </div>
    </div>
<div class="content">
<div class="line">
<div class="content mainContent">
<div class="sidebar">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#running-the-example">Running the Example</a></li>
<li class="level1"><a href="#crating-negative-bars">Crating Negative Bars</a></li>
</ul>
</div>
<div class="sidebar-content" id="sidebar-content"></div></div>
<h1 class="title">Temperature Records Example</h1>
<span class="subtitle"></span>
<!-- $$$temperaturerecords-brief -->
<p>The example shows how to create a bar chart with negative bars.</p>
<!-- @@@temperaturerecords -->
<!-- $$$temperaturerecords-description -->
<div class="descr"> <a name="details"></a>
<p>For our example we use temperature data.</p>
<p class="centerAlign"><img src="images/examples_temperaturerecords.png" alt="" /></p><a name="running-the-example"></a>
<h2 id="running-the-example">Running the Example</h2>
<p>To run the example from Qt Creator, open the <b>Welcome</b> mode and select the example from <b>Examples</b>. For more information, visit Building and Running an Example.</p>
<a name="crating-negative-bars"></a>
<h2 id="crating-negative-bars">Crating Negative Bars</h2>
<p>First we create two barsets and append the data to them. One set represents the minimum temperatures and another the maximum temperatures.</p>
<pre class="cpp">

      <span class="type"><a href="qbarset.html">QBarSet</a></span> <span class="operator">*</span>low <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qbarset.html">QBarSet</a></span>(<span class="string">&quot;Min&quot;</span>);
      <span class="type"><a href="qbarset.html">QBarSet</a></span> <span class="operator">*</span>high <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qbarset.html">QBarSet</a></span>(<span class="string">&quot;Max&quot;</span>);

      <span class="operator">*</span>low <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">52</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">50</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">45.3</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">37.0</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">25.6</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">8.0</span>
           <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">6.0</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">11.8</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">19.7</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">32.8</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">43.0</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="operator">-</span><span class="number">48.0</span>;
      <span class="operator">*</span>high <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">11.9</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">12.8</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">18.5</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">26.5</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">32.0</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">34.8</span>
            <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">38.2</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">34.8</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">29.8</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">20.4</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">15.1</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">11.8</span>;

</pre>
<p>We create the series and append the barsets to it. The series takes ownership of the barsets.</p>
<pre class="cpp">

      <span class="type"><a href="qstackedbarseries.html">QStackedBarSeries</a></span> <span class="operator">*</span>series <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qstackedbarseries.html">QStackedBarSeries</a></span>();
      series<span class="operator">-</span><span class="operator">&gt;</span>append(low);
      series<span class="operator">-</span><span class="operator">&gt;</span>append(high);

</pre>
<p>Here we create the chart object and add the series to it. We set the title for the chart with setTitle, and then turn on animations of the series by calling setAnimationOptions(<a href="qchart.html#AnimationOption-enum">QChart::SeriesAnimations</a>)</p>
<pre class="cpp">

      <span class="type"><a href="qchart.html">QChart</a></span> <span class="operator">*</span>chart <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qchart.html">QChart</a></span>();
      chart<span class="operator">-</span><span class="operator">&gt;</span>addSeries(series);
      chart<span class="operator">-</span><span class="operator">&gt;</span>setTitle(<span class="string">&quot;Temperature records in celcius&quot;</span>);
      chart<span class="operator">-</span><span class="operator">&gt;</span>setAnimationOptions(<span class="type"><a href="qchart.html">QChart</a></span><span class="operator">::</span>SeriesAnimations);

</pre>
<p>To have the categories displayed on an axis, we need to create a <a href="qbarcategoryaxis.html">QBarCategoryAxis</a>. Here we create a category axis with a list of categories and add it to the chart aligned to bottom, acting as the x-axis. The chart takes ownership of the axis. For y-axis we use a value axis, aligned to the left-hand side. We change the range for the y-axis, as this gives nicer results than with autoscaling.</p>
<pre class="cpp">

      <span class="type">QStringList</span> categories <span class="operator">=</span> {
          <span class="string">&quot;Jan&quot;</span><span class="operator">,</span> <span class="string">&quot;Feb&quot;</span><span class="operator">,</span> <span class="string">&quot;Mar&quot;</span><span class="operator">,</span> <span class="string">&quot;Apr&quot;</span><span class="operator">,</span> <span class="string">&quot;May&quot;</span><span class="operator">,</span> <span class="string">&quot;Jun&quot;</span><span class="operator">,</span> <span class="string">&quot;Jul&quot;</span><span class="operator">,</span> <span class="string">&quot;Aug&quot;</span><span class="operator">,</span> <span class="string">&quot;Sep&quot;</span><span class="operator">,</span> <span class="string">&quot;Oct&quot;</span><span class="operator">,</span> <span class="string">&quot;Nov&quot;</span><span class="operator">,</span> <span class="string">&quot;Dec&quot;</span>
      };

      <span class="type"><a href="qbarcategoryaxis.html">QBarCategoryAxis</a></span> <span class="operator">*</span>axisX <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qbarcategoryaxis.html">QBarCategoryAxis</a></span>();
      axisX<span class="operator">-</span><span class="operator">&gt;</span>append(categories);
      axisX<span class="operator">-</span><span class="operator">&gt;</span>setTitleText(<span class="string">&quot;Month&quot;</span>);
      chart<span class="operator">-</span><span class="operator">&gt;</span>addAxis(axisX<span class="operator">,</span> <span class="type">Qt</span><span class="operator">::</span>AlignBottom);
      <span class="type"><a href="qvalueaxis.html">QValueAxis</a></span> <span class="operator">*</span>axisY <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qvalueaxis.html">QValueAxis</a></span>();
      axisY<span class="operator">-</span><span class="operator">&gt;</span>setRange(<span class="operator">-</span><span class="number">52</span><span class="operator">,</span> <span class="number">52</span>);
      axisY<span class="operator">-</span><span class="operator">&gt;</span>setTitleText(<span class="string">&quot;Temperature [&amp;deg;C]&quot;</span>);
      chart<span class="operator">-</span><span class="operator">&gt;</span>addAxis(axisY<span class="operator">,</span> <span class="type">Qt</span><span class="operator">::</span>AlignLeft);
      series<span class="operator">-</span><span class="operator">&gt;</span>attachAxis(axisX);
      series<span class="operator">-</span><span class="operator">&gt;</span>attachAxis(axisY);

</pre>
<p>We also want to show the legend. To do so, we get the legend pointer from the chart and set it to visible. We also place the legend to the bottom of the chart by setting its alignment to Qt::AlignBottom.</p>
<pre class="cpp">

      chart<span class="operator">-</span><span class="operator">&gt;</span>legend()<span class="operator">-</span><span class="operator">&gt;</span>setVisible(<span class="keyword">true</span>);
      chart<span class="operator">-</span><span class="operator">&gt;</span>legend()<span class="operator">-</span><span class="operator">&gt;</span>setAlignment(<span class="type">Qt</span><span class="operator">::</span>AlignBottom);

</pre>
<p>Finally we add the chart onto a view. We also turn on the antialiasing for the chartView.</p>
<pre class="cpp">

      <span class="type"><a href="qchartview.html">QChartView</a></span> <span class="operator">*</span>chartView <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="qchartview.html">QChartView</a></span>(chart);
      chartView<span class="operator">-</span><span class="operator">&gt;</span>setRenderHint(<span class="type">QPainter</span><span class="operator">::</span>Antialiasing);

</pre>
<p>Chart is ready to be shown. We set the chart to be the central widget of the window. We also set the size for the chart window and show it.</p>
<pre class="cpp">

      <span class="type">QMainWindow</span> window;
      window<span class="operator">.</span>setCentralWidget(chartView);
      window<span class="operator">.</span>resize(<span class="number">600</span><span class="operator">,</span> <span class="number">300</span>);
      window<span class="operator">.</span>show();

</pre>
<p>Files:</p>
<ul>
<li><a href="qtcharts-temperaturerecords-main-cpp.html">temperaturerecords/main.cpp</a></li>
<li><a href="qtcharts-temperaturerecords-temperaturerecords-pro.html">temperaturerecords/temperaturerecords.pro</a></li>
</ul>
</div>
<!-- @@@temperaturerecords -->
        </div>
       </div>
   </div>
   </div>
</div>
<div class="footer">
   <p>
   <acronym title="Copyright">&copy;</acronym> 2019 The Qt Company Ltd.
   Documentation contributions included herein are the copyrights of
   their respective owners.<br/>    The documentation provided herein is licensed under the terms of the    <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation    License version 1.3</a> as published by the Free Software Foundation.<br/>    Qt and respective logos are trademarks of The Qt Company Ltd.     in Finland and/or other countries worldwide. All other trademarks are property
   of their respective owners. </p>
</div>
</body>
</html>