守破離でいこう! -Let's go with SyuHaRi!-

2008/03/09

RubyでGoogle Data APIs

Googleが提供するさまざまなサービスには、Google Data APIsを利用して、データの取得や更新を行うことができます。

現在、以下のサービスへのAPIが提供されています。

JavaScriptからSpreadsheetsを操作できないかと調べてみたのですが、JavaScript client libraryは、現在、Google Calendar と Bloggerのみのようです。

そこで、Rubyのライブラリを探してみると、gdata-rubyというライブラリがありました。
ただ、このライブラリは現在開発がストップしているらしく、SpreadsheetとBloggerのみに対応しているようです。

というわけで、せっかくなのでRubyでGoogle Spreadsheets data APIを試してみました。

ruby-gdataのインストール

gem install GData

書き込みテスト

#!/usr/bin/env ruby

require 'gdata/spreadsheet'

gdata_user = 'xxx@gmail.com'
gdata_pass = 'xxx'
gs_key = 'xxx'

gs = GData::Spreadsheet.new(gs_key)
gs.authenticate(gdata_user, gdata_pass)

gs.add_to_cell 'sin(0.2)'

残念ながら、使用感はいまいちでした。他によいライブラリはないのでしょうか・・・?

ラベル: , ,

naoki 21:18 | 0 comments |
HaloScan: |

2008/02/29

Google Chart API を使ってみる

しばらく前に、Google Chart API が公開されたのですが、後れ馳せながら使ってみました。

Google Chart APIは、Google Static Maps APIと同じようにグラフを画像(PNGフォーマット)で返してくれるAPIです。(Google Chart APIが先ですが・・)

Google Chart API - Hello World
http://chart.apis.google.com/chart?cht=p3&chd=s:hW&chs=400x200&chl=Hello|World

Google Chart API のURLは、次の形式になっていて、parameters部分は以下のようになっています。※グラフの種類によって違ってきます。

http://chart.apis.google.com/chart?parameters
chs
グラフのサイズ
e.g. 400x250
※最大値は1000x1000
chd
グラフのデータ
e.g. s:helloWorld
データをエンコードした文字列を設定します
cht
グラフの種類
e.g. lc
chxt
軸ラベルの表示
e.g. x,y
chxl
軸ラベル
e.g. 0:|Mar|Apr|May|June|July|1:||50+Kb

上記の例だと、このようなグラフになります。


http://chart.apis.google.com/chart?chs=400x250&chd=s:helloWorld&cht=lc&chxt=x,y&chxl=0:|Mar|Apr|May|June|July|1:||50+Kb

表示できるグラフの種類は、円・棒・折れ線グラフはもちろん、面グラフや散布図といったものまで表示でき、大概のグラフは表示できそうです。

これまでグラフを貼り付けるのに、Excelで作成したものを貼り付けたり、Flashでやっていたものが、簡単に貼り付けられるようになったのは素晴らしいと思います。ただ、今のところ(2008/02/29現在)、ラベルに日本語はうまく表示できないようなのがちょっと残念。

なお、利用にあたっては、ユーザあたり50,000リクエスト/日(query limit of 50,000 queries per user per day)という制限があります。

ラベル: , ,

naoki 22:14 | 0 comments |
HaloScan: |

2008/02/28

Google Static Maps APIを使ってみる

先日、より簡単にGoogleマップを表示できるようになる、Google Static Maps API公開されました。

特定の地図をimageデータ(GIFフォーマット)として返してくれるようで、いろいろと使い道があるのではないでしょうか。(特にモバイル)

というわけで、さっそく使ってみました。

River Stone Inc.

携帯で表示(240x270)
QRコード
http://www.r-stone.net/blogs/ishikawa/google_static_maps_api_mobile.html

使い方は非常に簡単で、Static Map Wizardで手軽に作成できます。

Google Static Maps API のURLは、次の形式になっていて、parameters部分は以下のようになっています。

http://maps.google.com/staticmap?parameters
center(必須)
マップの中央の座標
e.g. 40.714728,-73.998672
zoom(必須)
ズームレベル
e.g. 17
size(必須)
画像のサイズ
e.g. 500x400
※最大値は512x512
maptype(オプション)
roadmap(デフォルト):通常のマップ
mobile:表示文字等が簡略化されたモバイル用
markers(オプション)
マーカーの位置,色,文字
※"|"で区切ることで複数マーカーが可能
{latitude},{longitude},{color}{alpha-character}
e.g. 40.702147,-74.015794,blues|40.711614,-74.012318,greeng
key(必須)
APIキー
Google Maps APIと同じ

なお、利用にあたって、1ユーザ(1IPアドレス)当たり、表示は1日1,000種類の画像までという制限(※原文によると「1000 unique (different) image requests per viewer per day」)があるので要注意です。

ラベル: , ,

naoki 22:25 | 0 comments |
HaloScan: |