20210422

20210422

create_pages.py で全体のページを作る

create_result.py で○○.resultファイルからSRR IDのサンプル情報などをNCBIからパースし、結果表示用のHTMLを作成する。またグラフをiframeタグで埋め込む

createresult.py から、htmlparse.sh を実行する。NCBIのサイトにcurlコマンドでアクセス→HTMLを取得、Study、Submmited by、Sampleの情報を取得する。またアクセス前にはsleepコマンドで1秒間隔をとっている。

create_graphs.py でGoogle Chart APIを使用したグラフ表示用のHTMLを作成する。

100%積み上げ横棒グラフの作成 https://www.finddevguides.com/Googlecharts-bar-percent

  • 描画用インスタンスを作成する時に、BarChartを使用する
  • 通常の棒グラフと列と行を反転させることで積み上げグラフになる。
  • オプションでisStacked: 'percent' を使用することで100%グラフになる。

searchquerytopHit.sh で吉武先生のスクリプトで生成される○○.tsvのTop10でヒットするバクテリア名などを取得する。

searchparse.shで各SRRのIDに対してsrrid.fastq.fasta.ssu.blast.filtered.name.lca.cnt2.inputでTop10ヒットするバクテリア名などを取得する。

これら2つに対して、100%積み上げ横棒グラフを作成する。

汎用の削除

  • オプションでlegend: 'none' を指定

作業のディレクトリは/home/yoshitake/Ito/test/create_chartにスクリプトは配置。HTML作成用のテンプレートファイルはtemplates ディレクトリに配置している。

現在はinputファイルである○○.result、○○.tsvはこの作業ディレクトリに配置している(スクリプトもここで動くように記述)

singularity run ~/Ito/test/python3env.sif python createpages.py 1037294fa7c2752b72507c9ff46c9c58.gz.result 実行することで、HTMLファイルはこのディレクトリの、ファイルのプレフィックスと同じ名前のディレクトリに入る。

このファイルをNode.jsのPublicディレクトリに配置することで、ブラウザからHTMLファイルを確認できる。 cp 1037294fa7c2752b72507c9ff46c9c58 ~/metasearchdev/metasearchdevdeploy/metasearchdev/metasearch_dev/public/html/ -r

https://meta.fs.a.u-tokyo.ac.jp/metasearch_dev/html/1037294fa7c2752b72507c9ff46c9c58/result.html などに接続することでブラウザから確認できる。

  • バクテリア名などをマージ、QueryとSRRIDに対して、{バクテリア名:ヒット数}のようなオブジェクトを作成。ヒットしていないものは0。このオブジェクト2つを利用して、グラフを作成。
  • Top10以外のものもOtherとして、含める(この際NO HITのものは除外する。ショットガンだとこれが多いらしい)
  • CSS(フレームワーク使う?)で装飾
  • レイアウト考える (Queryのグラフ1つにする→Blastのイメージ)
  • 拡張子変わったらそれに合わせて処理変える
  • 20210422.1619087655.txt.gz
  • 最終更新: 2021/04/22 10:34
  • by 133.11.144.10