Google 发布 Chart API

  • Mark Little
  • 张海龙

2007 年 12 月 9 日

话题:SOAGoogleDevOps语言 & 开发架构文化 & 方法

Google 团队宣布了 Chart API,这一版本提供了动态生成图表并嵌入到 Web 页面中的功能,Steve Crossan 这样写到:

实际上,我们最开始构建它时,是为了内部使用,我们在Google VideoGoogle Finance中使用了它,我们觉得,如果能开放它让其他用户也使用的话,会是件不错的事情。

另外,这也是 Google 为自身开发人员提供“20% 自由支配时间”所获成果的一个示例!

这套 API 简单易用,我们来看这个示例:http://chart.apis.google.com/chart?cht=p3&chd=s:hW&chs=250x100&chl=InfoQ|Rocks,它创建了一个 PNG 格式的有二个饼块的三维饼图,很简单地嵌在一个 img 标签中,更复杂的饼图则是对这种方式进行逻辑扩展的结果。现在的版本支持一组相当多元化的图表类型,包括线条图条状图维恩图散点图等,还支持一些其它效果。作为一个团队在“业余”时间做出来的早期版本,这已经很不错了。

就像其文档中展示的那样,它可以非常容易地用 JavaScript 以图片方式嵌入到 html 中。



var simpleEncoding = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';

function simpleEncode(values,maxValue) {

var chartData = ['s:'];



for (var i = 0; i < values.length; i++) {

var currentValue = values[i];

if (!isNaN(currentValue) && currentValue >= 0) {

chartData.push(simpleEncoding.charAt(Math.round((simpleEncoding.length-1) * currentValue / maxValue)));

}

else {

chartData.push('_');

}

}

return chartData.join('');

}
它是一个美观、简洁但很强大的 API,使图表拥有更多有趣的可能性,其动态特性还意味着可以用它来提供(相对)实时的更新信息。

查看英文原文Google Releases Chart API

SOAGoogleDevOps语言 & 开发架构文化 & 方法