創作意欲とか物欲とか、そういう類のものスマートフォン用の表示で見る創作意欲とか物欲とか、そういう類のもの2019-02-16ネットワーク可視化ツール「Cytoscape」に雑に入門して手っ取り早く使う話Cytoscapeさてさて、とつぜんですが系統図とかネットワーク図を書く必要に迫られたことってありませんか?僕はありました。こんな図とかこんな図のことです今日はそんなときに無料(!)で使える超つよいツール「Cytoscape(サイトスケープ)」に雑に入門して、お絵描きソフト感覚で手っ取り早く使う方法を紹介しようと思います。※この記事は、僕みたいに伝統的な日本企業で働く「Python?、R?なにそれ食べられるの?」「データベース?エクセルの表のことでしょ?」ってレベルの人向けに書いています。図解!ネットワーク図作成のながれさあ、まずはCytoscapeをインストール例題は親しみやすいほうがいいですよねデータセットを作ろう最低限必要な項目はこの3つあれ、登場人物、誰がいたっけ?Cytoscapeへの読み込みちょっと見た目にこだわってみる見やすいレイアウトをさがそうスタイルを設定してさらに見やすくするまとめCytoscapeを自動操作したいって?このソフト、巷には研究者向け(?)の情報ばかりで、専門的なデータ整形ツールで元データを準備する前提だったり、生物科学っぽい用語が頻出してチンプンカンプンだったりして使い始めるのに苦労したので、ここではExcelでカジュアルにデータを手作りしてなるべく雑に入門する方法を記します。雑に入門したあとは、Cytoscapeチュートリアル日本語訳という超ありがたいページがあるので、ここを熟読するとよいでしょう。seesaawiki.jpあと、基本的な機能や操作を把握するのにこのスライドも大変参考になりました。motdb.dbcls.jp図解!ネットワーク図作成のながれこんな流れを解説していきます。さあ、まずはCytoscapeをインストール公式サイトからインストーラーをダウンロードしてインストールしましょう、見やすいサイトなので迷わずできると思います。cytoscape.org例題は親しみやすいほうがいいですよね「分子間相互作用と遺伝子発現プロファイルを統合して可視化」とか言われてもサッパリですよね。庶民的で小規模なサンプルということで、きっとみんな知っている国民的SFアニメの人物相関を使って解説してみようと思います。データセットを作ろうでは、頭よりも手を動かす方向で、さっそくサンプルデータを作っていきましょう。最低限必要な項目はこの3つネットワーク図を描くのに必要な最低限のデータはこの3つです。今回つくるのは人物相関なので、ノードの名前には人名が入り、エッジは人物同士の関係を表します。エッジの名前はかぶらなければOKなので、入力していった順に連番を付けていきましょう。Excelで作る場合は「エッジ名の列」「Fromノード名の列」「Toノード名の列」の順で並べると扱いやすいと思います。あれ、登場人物、誰がいたっけ?おもむろにExcelを開き、人間関係を思い出しつつ片っ端から入力していきます。※今回はお手軽さ重視で、From~Toの方向性は考えません。え〜っと、ドラえもんはのび太の居候、のび太はしずかちゃんのことが好き、ジャイアンはのび太に対してマウントを取る...そうして入力したものがこちらです、整理しやすいように関係の列も追加してみました。親子データの入力が終わったら適当な名前を付けて保存しておきましょう。CytoscapeはExcelブック(.xlsx)形式の読み込みに対応しているので、普通に保存すればOKです。CSVやTSVの読み込みにも対応していますが、その場合何かしらの方法で文字コードをUTF-8にしておかないとエラーが出ます。Cytoscapeへの読み込みCytoscapeを起動すると、こんな画面が開きます。今回作ったテーブルはネットワークテーブルとして読み込むことになるので、画面左のパネルの「Network」タブにファイルをドラッグ&ドロップします。here」って書いてあるところそうすると、読み込み設定の画面が出てくるので、ここでノード名とエッジ名の列を指定してあげます。Node(オレンジ丸)にしておきましょう。OKを押すとファイルが読み込まれます。うまくいっていれば、もうそれっぽい図が描かれていますね。見た目にこだわってみる見やすいレイアウトをさがそう読み込みがうまくいったらレイアウトを変えてみましょう。メニューの「Layout」のところから選択できるので、いろいろ試してデータに合ったものを探すと良いです。詳しくは公式のドキュメントや、超ありがたい日本語版チュートリアルを参考にしてみてください。こんなのとかこんなのいろいろあるこうしていろいろレイアウトを試してるだけでもじゅうぶん楽しいですが、Cytoscapeの醍醐味はデータをスタイルのパラメータとして描画できるってとこです。いうことかっていうと、たとえば人物同士の関係性によってエッジの色を塗り分けたり、人物の体重に応じてノードの大きさを変えたりすることが簡単にできます。Cytoscapeならね。スタイルを設定してさらに見やすくする今回は人物同士の関係に応じて、エッジの色を変えるやつをやってみましょう。Color」の「Map.」を選び、「関係」カラムを選択します。Mapping」を選ぶと、項目に対して個別に色をマッピングできるようになります。ここではお手軽に、自動でカラーマップを設定してみましょう。Generators」を選択して適当なカラーマップを選びます。ためしにRainbowにしてみました。ほら、ちゃんと関係ごとに色分けされていますね、簡単!スタイルのパラメーターは他にもいろいろ設定できるので、例のごとく超ありがたいチュートリアルを参考にしつつ、センスの赴くままにかっこよく作りこんでいくと良いと思います。まとめ今回作った例は手描きでも作れるくらいの規模でしたが、Cytoscapeを使う雰囲気は掴めたんじゃないかと思います。大規模なデータを扱う時も流れは一緒なので、ネットワークとして表現できそうなデータがあったらガンガン突っ込んで可視化してみると良いでしょう。ちなみに、僕が必要に迫られて描いたのはこんな図です。あぁ、Cytoscapeほんとつよい。08:00ネットワーク可視化ツール「Cytoscape」に雑に入門して手っ取り早く使う話Tweet関連記事2020-01-23格安BTLアンプ&3ch疑似サラウンド環境を5chにアップグレードした話—BTLでスピーカーマトリク...この記事の続編です。...さて、Cytoscape関係の4本目です。ネットワ...2019-12-19LED照明を良い感じにフェードさせる方法の別解—洗面台を女優ミラー仕様にした話—さて、しばらく前に家の本棚をLEDで良い感じに光らせるという話...2019-07-20ネットワーク可視化ツール「Cytoscape」で描いた大きな図を印刷する話—CyREST+Image...さて、またCytoscapeネタを1発。はてなブログPro物作りやガジェットの事を書いていきます。(1)検索スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。