0

Javaスクリプトを使用してハイチャートを作成していますが、正常に動作していますが、回答変数とともにパーセンテージ%記号も表示する必要があります.3つの変数ans66 ans67およびans68があり、それらの値とともに%も表示する必要があります.

<script type="text/javascript">
    $(document).ready(function() {
       ans66=0;
       ans67=0;
       ans68=0;
       ans69=0;
       var chart = new Highcharts.Chart({
         chart: {
           renderTo: 'container_1',
           defaultSeriesType: 'column'
         },
         xAxis: {
           categories: [''],
              title: {
                 text: 'Revenue base on one trip/one 4-pack per year',
                 style: {
                     color: '#767575'
                 }},
                 labels: {
                     align: 'right',
                     style: {
                         font: 'normal 11px Verdana'
                     },
                     x: 24,
                 }
              },
              yAxis: {
                 min: 0,
                 startOnTick: false,
                 labels: {
                 formatter: function() {
                     return this.value;
                 },
                style: {
                     color: '#767575'
                }
              },
              title: {
                text: '$',
                style: {
                   color: '#767575'
                }
              }
          },
          series: [{
               name: 'Revenue $',
               data: [ans66]
            }, {
               name: 'Revenue $',
               data: [ans67]
            }, {
               name: 'Revenue $',
               data: [ans68]
            }, {
               name: 'Revenue $',
               data: [ans69]
            }] 
         });
     });
4

3 に答える 3

1

シリーズを比較する場合は、次のコードを追加するだけです。

plotOptions: {
    series: {
        compare: 'percent'
    }
}

または、追加することもできますvaluePrefix。私の意見では、それが最善の方法です。各セリエ ポイントをフォーマットする必要はありません。

tooltip: {
    valuePrefix: '%'
}

デモ

于 2012-12-19T16:21:30.723 に答える
0

連結は、+char を使用して JavaScript で行われます。例

var ans89pct = ans89 + '%';

おそらくコードを置き換える必要があります:

   ...
        series: [{
           name: 'Revenue $',
           data: [ans66 + '%']
        }, {
           name: 'Revenue $',
           data: [ans67 + '%']
        }, {
           name: 'Revenue $',
           data: [ans68 + '%']
        }, {
           name: 'Revenue $',
           data: [ans69 + '%']
        }] 
   ...
于 2012-12-19T08:20:19.680 に答える
0

パーセント記号を追加したい正確な場所を明確に述べていません。

それで、私はあなたのコードを取り、サンプルのフィドルを作成しました。

変更 1:

yAxis: {
                 min: 0,
                 startOnTick: false,
                 labels: {
                 formatter: function() {
                     return this.value + ' %';
                 },
                style: {
                     color: '#767575'
                }
              },

補足として、すべての JS 変数を追加して配列を作成する必要があります。これにより、可読性が向上し、コードの冗長性が減少します。

例:

var myArray = [11,12,9,13];

series: [{
               name: 'Revenue $',
               data: myArray
            }] 
         });
于 2012-12-19T12:09:21.037 に答える