Mais conteúdo relacionado Semelhante a 090608-TogoWS REST (20) 090608-TogoWS REST3. Web APIを利用する
・ Web APIとは
・ Google Chart APIとは
・ Google Chart APIの使い方
・ Google Chart APIを実際に使ってみましょう。
・ 演習問題
3
4. Web APIとは
まず、APIとは「Application Programming Interface」の略で、プログラムがその機能
を他のプログラムから利用できるように公開するインターフェイスのことです。
Web APIとは、HTTPを利用してネットワーク越しに処理を実行して結果を受け取る仕
組みのことです。
Google Chart APIとは
Google Chart APIとはグーグルが提供しているグラフ作成サービスです。
URLにパラメータを指定するだけでグラフをPNG画像として取得できます。
日本語での説明 Google Chart API入門(http://www.ajaxtower.jp/googlechart/)
例 URLに
http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc
と入れると、以下の図を得ることができる。
4
5. Google Chart APIの使い方 サイズとデータ
http://「指定のURL」?「パラメータ1」&「パラメータ2」&「パラメータn」
例: http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc
指定のURLは「http://chart.apis.google.com/chart」で「?」でつなぎます。
パラメータは「パラメータ名=値」の形式になっていて、複数のパラメータを指定する場合
には区切り文字として「&」を使い、続けて記述します。
パラメータ
chs: Chart size 単位はピクセル*です。
chs=<幅>x<高さ>
*: ピクセル (pixel) とはコンピュータで画像を扱うときの最小単位で、色情報(色調や階調)を持つ画
素のこと。 グラフは指定したサイズいっぱいに表示されるように自動調整されて表示されます。
chd: Chart data
数値形式での指定
chd=t:<データを表す文字列>
系統を追加する場合
chd=t:<データを表す文字列>|<データを表す文字列>|<データを表す文字列>
1つのデータを表すのにX軸の値とY軸の値を指定する形式
chd=t:<系統1のX軸データ>|<系統1のY軸データ>|<系統2のX軸データ>|<系統2のY軸
データ>
5
6. Google Chart APIの使い方 グラフの種類
http://「指定のURL」?「パラメータ1」&「パラメータ2」&「パラメータn」
例: http://chart.apis.google.com/chart?chs=150x150&chd=t:78.0,32.0,84.0&cht=lc
cht: Chart type
cht=lc 折れ線グラフ(Y軸のデータを指定)
cht=lxy 1つのデータを表すのにX軸の値とY軸の値を指定する折れ線グラフ
cht=bhs 積み上げ棒グラフ(横棒)
cht=bvs 積み上げ棒グラフ(縦棒) この講義では触れないので、
(http://www.ajaxtower.jp/googlechart/)を
cht=bhg 集合棒グラフ(横棒) 参照して下さい。
cht=bvg 集合棒グラフ(縦棒)
cht=p 2次元の円グラフ
cht=3p 3次元の円グラフ
cht=v ベン図(3つの集合に対するベン図を作成できます。)
cht=s 散布図
6
7. Google Chart APIの使い方 色の指定
chco:Colors
例 chco=FF0000,00FF00
RRGGBB
赤青緑をそれぞれ16進数*で「00」から「FF」までの値で指定します。
HTMLで色を指定する場合と同じです。
例えば次のようになります。
000000 = 黒
FF0000 = 赤
00FF00 = 緑
0000FF = 青
FFFFFF = 白
*16進法
数値を表現する際に、各桁の重み付けの基本となる数を16とした数値の表現方法。
桁が一つ移動する毎に値の重みが1.6倍になる。
「0」から「9」までの10種類の数字に加え、「A」から「F」までの6種類の文字を数字として用
いる。「A」が10進数で言う「10」に、Bが11に、Cが12に、Dが13に、Eが14に、Fが15に対応
する。
7
8. Google Chart APIを実際に使ってみましょう 1
2つの系統からなる折れ線グラフ(Y軸のデータのみ指定)(赤と緑の線)
http://chart.apis.google.com/chart?chs=300x300&chd=t:10,15,4,60,45|30,23,73,24,87
&cht=lc&chco=ff0000,00ff00
実行するには、Safariを立ち上げてURLのところに入れる
赤 | 緑
結果
データの値を変えて[enter]すると、
すぐに反映されます。
数値をいろいろ変えてみて下さい。
8
9. Google Chart APIを実際に使ってみましょう 2
散布図
http://chart.apis.google.com/chart?chs=200x200&chd=t:20,40,60|15,25,40&cht=s
(x, y)=(20, 15)
=(40, 25)
=(60, 40)
上記のような3つの点をデータとして設定する
場合、次のように記述します。
データの値を増やしていろいろ試してみましょう。
chd=t:20,40,60|15,25,40
また、「X軸のデータ|Y軸のデータ|各点の大きさ」として
結果
点の大きさを変えることができます。
例 chd=t:20,40,60|15,25,40|25,50,75
9
10. Google Chart APIを実際に使ってみましょう 3
円グラフ
http://chart.apis.google.com/chart?chs=300x300&chd=t:50,25,15,6,4&cht=p
3D円グラフ
http://chart.apis.google.com/chart?chs=300x300&chd=t:50,25,15,6,4&cht=p3
結果 円グラフ 結果 3D円グラフ
ラベルを付けたい場合には、
chl=<ラベル1>|<ラベル2>|<ラベルn>
例 chl=Italy|Spain|France|Germany|Greece|UK
http://chart.apis.google.com/chart?chs=460x230&chd=t:35,34,12,12,6,1&cht=p
&chl=Italy|Spain|France|Germany|Greece|UK 10
11. Google Chart APIを実際に使ってみましょう 4
ベン図
7つの値をデータとして指定する必要があります。
最初の3つの値で、3つの集合(A、B、Cとします)にそれぞれ含まれる個数を指定します。
4つ目の値で集合Aと集合Bに共通する個数を指定します。
5つ目の値で集合Aと集合Cに共通する個数を指定します。
6つ目の値で集合Bと集合Cに共通する個数を指定します。
7つ目の値で全ての集合で共通する個数を指定します。
http://chart.apis.google.com/chart?chs=200x200&chd=t:100,80,50,20,20,10,5&cht=v
(A, B, C AB, AC, BC, ABC)
結果 データの値を変えていろいろな大きさと
重なりを試してみて下さい。
ファイルとして保存したい場合には、ターミナルから
$ curl -o graph.png
quot;http://chart.apis.google.com/chart?chs=200x200&chd=t:100,100,50,20,20,10,5&cht=vquot;
11
12. 演習
1) 以下のX軸とY軸の値を持つ折れ線グラフを描いて下さい。
系統1(x, y)=(0, 10) 系統2(x, y)=(0, 30) 系統3(x, y)=(0, 20)
=(25, 15) =(30, 23) =(20, 50)
=(50, 4) =(60, 73) =(40, 30)
=(80, 60) =(90, 24) =(90, 50)
そして、系統1,2,3それぞれ好きなように色を指定して下さい。
2) 集合Bが集合AとCを飲み込んでしまうベン図を描いて下さい。
答えの例
1)
http://chart.apis.google.com/chart?chs=200x200&chd=t:0,25,50,90|10,15,4,60|0,30,60,90
|30,23,73,24|0,20,40,90|20,50,30,50&cht=lxy&chco=ff1100,9900ff,0034ff
2) http://chart.apis.google.com/chart?chs=300x300&chd=t:40,100,20,50,0,50,50&cht=v
12
16. TogoWS: REST –Entry retrieval-
xml: Extensible Markup Language
tagにより文書やデータの意味や構造を記述
json: JavaScript Object Notation
JavaScriptのオブジェクトの表記法をベースとした軽量なデータ記述
gff: 'Gene-Finding Format' or 'General Feature Format'
CDSやmotifについて記述
http://togows.dbcls.jp/entry/
対応しているdatabaseが表示されます。
http://togows.dbcls.jp/entry/ncbi-genbank/
情報を取得できる項目が表示されます。(例 definition, features, references, seqなど)
16
17. TogoWS: REST Entry retrieval (1)
・特定の遺伝子の情報や配列を取得
LOCUS
http://togows.dbcls.jp/entry/ebi-uniprot/MKRN1_MOUSE,MKRN1_HUMAN
http://togows.dbcls.jp/entry/ebi-uniprot/MKRN1_MOUSE,MKRN1_HUMAN.fasta
http://togows.dbcls.jp/entry/ncbi-genbank/MKRN1_MOUSE/seq
ACCESSION Number
http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335
http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335.fasta
http://togows.dbcls.jp/entry/ncbi-genbank/NM_173335/seq
GI (GenInfo Identifier)
http://togows.dbcls.jp/entry/ncbi-genbank/27545435
17
18. TogoWS: REST Entry retrieval (2)
・PubMedから論文情報や要旨などを取得
Buck & Axel Cell 1991 65:175-87 PMID:1840504
http://togows.dbcls.jp/entry/ncbi-pubmed/1840504
http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/au
http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/abstract
http://togows.dbcls.jp/entry/ncbi-pubmed/1840504/mesh
Nozawa & Nei PNAS 2007 24:7122-7 PMID:17438280
http://togows.dbcls.jp/entry/ncbi-pubmed/17438280
http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/au
http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/abstract
http://togows.dbcls.jp/entry/ncbi-pubmed/17438280/mesh
* meshとは、
MeSH (Medical Subject Headings)は、NLMが定める生命科学用語集のことです。
NLMがMEDLINEで文献を管理する際、文献の内容を表す適切な用語を、10〜15個程度
文献に付与し、この用語により文献を検索・管理できるようにしているが、その際に
MeSHの用語を用いる。
18
19. TogoWS: REST –Database search-
keywordによる検索
http://togows.dbcls.jp/search/
対応しているdatabaseを見ることができます。
queryの文字をファイル中に含むものについての検索します。
略を使うと、目的以外のものが当たることが多くなります。
offset, limitで、hitした数を数えたり、表示する数を指定することができます。
19
20. TogoWS: REST Database search
http://togows.dbcls.jp/search/[database]/[query+string]/[offset, limit]
例
http://togows.dbcls.jp/search/ebi-uniprot/olfactory/
http://togows.dbcls.jp/search/ebi-uniprot/olfactory/count
http://togows.dbcls.jp/search/ebi-uniprot/olfactory+rat/
http://togows.dbcls.jp/search/ebi-uniprot/olfactory+rat/1,20
http://togows.dbcls.jp/search/ebi-biomodels/olfactory
http://togows.dbcls.jp/search/ncbi-omim/olfactory
http://togows.dbcls.jp/search/kegg-enzyme/carboxylesterase
http://togows.dbcls.jp/search/ncbi-omim/carboxylesterase
http://togows.dbcls.jp/search/kegg-orthology/carboxylesterase
http://togows.dbcls.jp/search/kegg-reaction/carboxylesterase
http://togows.dbcls.jp/search/ebi-go/carboxylesterase
http://togows.dbcls.jp/search/ncbi-cdd/carboxylesterase
(cdd: conserved domain database)
20
21. 演習
・Makorin1についてRESTを利用して、論文情報と配列を取得する。
まず、NCBIのPubMedから
「Gray TA, Hernandez L, Carey AH, Schaldach MA, Smithwick MJ, Rus K, Marshall Graves
JA, Stewart CL, Nicholls RD.
The ancient source of a distinct gene family encoding proteins featuring RING and C(3)H
zinc-finger motifs with abundant expression in developing brain and nervous system.
Genomics. 2000 66:76-86.」のPMIDを取得。
http://togows.dbcls.jp/entry/ncbi-pubmed/[PMID]
論文情報は、コピーしてCotEditorで「makorin.paper」として保存して下さい。
論文情報に記載されている上から5つのアクセッション番号を用いて、
配列を取得して下さい。SI -GENBANK/AFOOOOOO
http://togows.dbcls.jp/entry/ncbi-genbank/[Accession number].fasta
fasta形式で取得して、種の名前も含めてCotEditorで「bin」に保存して下さい。
ファイル名の例「Makorin1_human.fasta」
これらを使ってdotplotを作成します。
21
22. Dotmatcherの使い方
dotmatcher dotmatcherを使います という指令
[-asequence] 比較したいファイル名(例: Makorin1_human.fasta)
[-bsequence] 比較したいファイル名(例: Makorin1_human.fasta)
-graph ps (postscript)で出力
-windowsize window sizeとして3以上の整数を入れる デフォルトは [10]
-threshold 0かそれ以上の整数を入れる デフォルトは[23]
-goutfile 出力ファイル名 (例:dot)
$cd ~/bin
$EMBOSS-6.0.1/emboss/dotmatcher Makorin1_human.fasta Makorin1_human.fasta -
graph ps –windowsize 20 –threshold 40 –goutfile human
オプションについての詳細は、
http://emboss.sourceforge.net/apps/release/5.0/emboss/apps/dotmatcher.html
22
24. Dotplot 演習 解説
種の分岐年代が古くなればなるほど、相同性を示す線が途切れがちになります。
human: AF192784, mouse: AF192785, wallaby: AF192786, chicken: AF192787, drosophila: AF192788 24
25. KEGGについて
http://www.kegg.jp/ja/
KEGGとは、Kyoto Encyclopedia of Genes and Genomesの略で、
KEGGはゲノムネットという、京都大学化学研究所バイオインフォマティクスセンターが提
供するインターネットサービスの中核にあります。
ゲノムネットは、KEGG の知識とオントロジーを中核に、世界中の主要データベースを
LinkDB で統合することを目的として作られています。
遺伝子・タンパク質に関するゲノム情報(KEGG GENES)、
生体内外の化学物質と生体内反応に関するケミカル情報(KEGG LIGAND)、
分子間相互作用・反応ネットワークに関するパスウェイ情報(KEGG PATHWAY)、
分子・細胞・個体に関する様々なオブジェクトの階層と関係(KEGG BRITE)
から構成されています。
この講義では、KEGGの基本的な使い方と
論文等からマニュアルにより
関連性のある遺伝子をつないでいる
PATHWAYと
階層状に機能分類をしたBRITEを
中心に紹介します。
25
31. 演習 答え
KEGG ORTHOLOGY (KO):
PATHWAYとBRITEに基づくオーソロググループ
31
32. 演習 答え 解説
「PATH:rno04740」
匂いが伝達される主な経路
odorant(匂い物質)
↓
Golf (G protein)
↓
AC (adenylate cyclase)
↓
cAMP
↓
CNG (cyclic nucleotide gated channel)
↓
Ca2+
↓
CLCA (chloride channel calcium activated)
緑色になっている部分は、
それらに関する遺伝子リストへ
リンクが貼られています。 32
34. まとめ
・ Web API Google Chart APIの使い方
・ ライフサイエンス関連のWeb API (TogoWS)のRESTの使い方
・ KEGGの使い方
次回は、TogoWSのSOAPを利用します。
34