Google 团队宣布了 Chart API,这一版本提供了动态生成图表并嵌入到 Web 页面中的功能,Steve Crossan 这样写到:
实际上,我们最开始构建它时,是为了内部使用,我们在 Google Video 和 Google 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';<p>function simpleEncode(values,maxValue) {</p><p>var chartData = ['s:'];</p><br></br> for (var i = 0; i < values.length; i++) {<br></br> var currentValue = values[i];<br></br> if (!isNaN(currentValue) && currentValue >= 0) {<br></br> chartData.push(simpleEncoding.charAt(Math.round((simpleEncoding.length-1) * currentValue / maxValue)));<br></br> }<br></br> else {<br></br> chartData.push('_');<br></br> }<br></br> }<br></br>return chartData.join('');<br></br>}
它是一个美观、简洁但很强大的 API,使图表拥有更多有趣的可能性,其动态特性还意味着可以用它来提供(相对)实时的更新信息。查看英文原文: Google Releases Chart API
评论