Столбчатая диаграмма визуализации Google - Как сделать ярлыки валютой - PullRequest
3 голосов
/ 24 августа 2010

Я просто пытаюсь отформатировать мои ярлыки, чтобы они отображались как валюта, а не просто число:

echo '  <script type="text/javascript" src="http://www.google.com/jsapi"></script>
  <script type="text/javascript">
    google.load("visualization", "1", {packages:["corechart"]});
    google.setOnLoadCallback(drawChart);
    function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn("string", "ZipCode");
        data.addColumn("number", "Sales");
        data.addRows('.$count.');';

$i = 0;
foreach ($results as $r) {
    $p = (($r->report_trans_amount / $total) * 100);
    $pd = strval(number_format($p, 1));
    echo '        data.setValue(' . $i . ', 0, "' . $r->member_address_zip_code .
                          ' - ' . $pd . '%");';
    echo '        data.setValue(' . $i . ', 1, ' . $r->report_trans_amount . ');';
    $i++;
}

echo '        var chart = new google.visualization.PieChart(
                          document.getElementById("chart_div"));
        chart.draw(data, {width:900, height:500, is3D:true});
    }
  </script>
  <div id="chart_div"></div>
';

Я бы хотел, чтобы столбец «Продажи» отображался в виде валюты в долларах США. Как я могу это сделать? Я вижу, как это сделать, используя URL-запрос, но это не помогает в этой ситуации.

Я просто не могу найти хорошего примера по этому поводу.

1 Ответ

2 голосов
/ 18 августа 2011

похоже, что вы можете посмотреть на setFormattedValue
http://code.google.com/apis/chart/interactive/docs/reference.html#DataTable_setFormattedValue
и для материала формата посмотрите на
http://code.google.com/apis/chart/interactive/docs/reference.html#formatters

Я не пробовал это, но из того, что я могу сказать, это могло бы сработать для вас:

echo '
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load("visualization", "1", {packages:["corechart"]});
      google.setOnLoadCallback(drawChart);
      function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn("string", "ZipCode");
        data.addColumn("number", "Sales");
        data.addRows('.$count.');
        var formatter = new google.visualization.NumberFormat({prefix: \'$\'});
        formatter.format(data, 1);';

        $i = 0;
        foreach($results as $r){
            $p = (($r->report_trans_amount / $total) * 100);
            $pd = strval(number_format($p, 1));
            echo 'data.setValue('.$i.', 0, "'.$r->member_address_zip_code.' - '.$pd.'%");';
            //echo 'data.setFormattedValue('.$i.', 1, formatter);'; // might not need this with the formatter.format above
            echo 'data.setValue('.$i.', 1, '.$r->report_trans_amount.');';
            $i++;
        }


echo '  var chart = new google.visualization.PieChart(document.getElementById("chart_div"));
        chart.draw(data, {width:900, height:500, is3D:true});
      }
    </script>
    <div id="chart_div"></div>
';

ссылки:
http://code.google.com/p/google-visualization-api-issues/issues/detail?id=282

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...