Google Charts透明背景无效

时间:2013-01-20 01:23:33

标签: google-visualization

我正在尝试使用谷歌图表制作的一些图表使背景透明。除了IE7和8之外,它们都可以完美地运行,我得到一个白色的背景。

我已经尝试了我可以找到的每种颜色属性组合来改变它但没有任何效果。

唯一要做的就是建议有人在几个月前在这里为有同样问题的其他人制作。他们的建议是......

对于透明背景,请使用chf = bg,s,FFFFFF00

但我不知道如何实现这个?

2 个答案:

答案 0 :(得分:13)

  

CHF = BG,S,FFFFFF00

是旧Google Image Charts的代码。

这些代码仅适用于非SVG版本的图表。谷歌图片图表已被弃用(正如您可以从他们的help pages看到的那样),因此除非您想要实现旧式图表,否则您将无法在新的,花哨的,交互式的图形上实现上述代码SVG图表。

对于新的花式SVG图表,我很幸运

backgroundColor: "transparent"

将其复制粘贴到Google Playground进行测试:

<!--
You are free to copy and use this sample in accordance with the terms of the
Apache license (http://www.apache.org/licenses/LICENSE-2.0.html)
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>
      Google Visualization API Sample
    </title>
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load('visualization', '1', {packages: ['corechart']});
    </script>
    <script type="text/javascript">
      function drawVisualization() {
        // Create and populate the data table.
        var data = google.visualization.arrayToDataTable([
          ['Year', 'Austria', 'Bulgaria', 'Denmark', 'Greece'],
          ['2003',  1336060,    400361,    1001582,   997974],
          ['2004',  1538156,    366849,    1119450,   941795],
          ['2005',  1576579,    440514,    993360,    930593],
          ['2006',  1600652,    434552,    1004163,   897127],
          ['2007',  1968113,    393032,    979198,    1080887],
          ['2008',  1901067,    517206,    916965,    1056036]
        ]);

        // Create and draw the visualization.
        new google.visualization.BarChart(document.getElementById('visualization')).
            draw(data,
                 {title:"Yearly Coffee Consumption by Country",
                  width:600, height:400,
                  vAxis: {title: "Year"},
                  hAxis: {title: "Cups"},
                  backgroundColor: "transparent"}
            );
      }


      google.setOnLoadCallback(drawVisualization);
    </script>
  </head>
  <body style="font-family: Arial;border: 0 none;" bgcolor="#E6E6FA">
    <div id="visualization" style="width: 600px; height: 400px;"></div>
  </body>
</html>

这只是添加了两件事的标准条形图示例:

  1. bgcolor =“#E6E6FA”到body元素(将其设为蓝色,以便我们可以判断是否透明)
  2. backgroundColor =“透明”选项(使其透明)
  3. 这适用于FireFox。我不知道它是否适用于IE7(没有测试环境)。如果有效,请告诉我们。

答案 1 :(得分:1)

在饼图所在的配置文件中进行适当的更改。 我在donate.php下有这个图表,例如:

$chartURL = 'http://chart.apis.google.com/chart?chf=bg,s,f9faf7&amp;cht=p&amp;chd=t:'.$percent.',-'.(100-$percent).'&amp;chs=200x200&amp;chco=639600&amp;chp=1.57';

$chartURL = 'http://chart.apis.google.com/chart?chf=bg,s,FFFFFF00&amp;cht=p&amp;chd=t:'.$percent.',-'.(100-$percent).'&amp;chs=200x200&amp;chco=639600&amp;chp=1.57';

该代码让我在白色背景时具有透明度!谢谢。