単純スケールアルゴリズム

1006 ワード

単純スケールアルゴリズム
  • 適用シーン
  • コード
  • まとめ
  • 適用シーン
             ,            。
    

    コード#コード#
    void setChartScale(QChart *chart, int maxNum)
    {
        int count = 0;
        int interval = 1; //     
        int bitNum = int(log10(maxNum)); //   
        for (int m=0; m<=4;m++) 
        {
            for (int n=0; n<=1; n++)
            {
                interval = pow(10, bitNum)*m + pow(10, bitNum)/2*n; // 10 15 20 。。。 100 150 200        
                for (count=2; count<9; count++)
                {
                    if (interval*count >= maxNum)
                    {
                         chart->axisX()->setRange(0, interval*(count+1));
                         QValueAxis *axisx = (QValueAxis*) chart->axisX();
                         axisx->setTickCount(count+2); //      
                         axisx->setLabelFormat("%d"); //      
                         return;
                    }
                }
            }
        }
    }
    

    まとめ
    範囲はゼロから始まる必要はありません.コードを変更する必要があります.