require 'gviz' class String def normalize_gviz_id self.gsub(/[ _¥(¥)]/, "") end end file = File.open("ruboty_committers", "r:utf-8"){|f|f.read} committers = file.each_line.map(&:chomp).map(&:normalize_gviz_id).reverse.map.with_index(1){|e, i|"#{e}#{i}"} committers.unshift("start") committers.push("goal") Graph do committers.each_slice(2) do |a, b| break if b.nil? edge :"#{a}_#{b}" end save :sample
(追記:2014-3-3) Gvizについてのまとめ頁を作りました。 Gvizの目次 - Rubyの世界からGraphvizの世界にこんにちは! GraphvizのRubyラッパーであるGvizというツールを作っておりまして。 gviz | RubyGems.org | your community gem host melborne/Gviz それは、次のようなgraph.ruというファイルを用意して、 route :main => [:init, :parse, :cleanup, :printf] route :init => :make, :parse => :execute route :execute => [:make, :compare, :printf] save :sample
(追記:2014-3-3) Gvizについてのまとめ頁を作りました。 Gvizの目次 - Rubyの世界からGraphvizの世界にこんにちは! 今日Rubyのクラスツリーを手書きでグラフ化している記事を見かけた。 A diagram of the Ruby Core object model - Jerome’s Adventures in Rubyland これを見てそういえばGraphvizのRubyによるラッパーを書いたのに未だRubyのクラスツリーをグラフ化していないことに気付いた。 melborne/Gviz gviz | RubyGems.org | your community gem host そしてRubyをグラフ化するならやっぱりRuby自身に書いてもらうのが一番だと思った。彼女も20才になったことだし。 早々gem install gvizでgvizを入れて次のよう
他人から引き継いだプロジェクトの大まかな全体設計を把握したい場合、規模の大きいライブラリの一部だけ取り出して使用したい場合、複雑になってしまったコードをリファクタリングしたい場合等、プロジェクト内のクラスの依存関係が一望できると有益な場面は多いのではないでしょうか。 objc_depというスクリプトを用いると、下記のように、Xcodeプロジェクト内のクラスの依存関係を示す図をコマンド一発で生成することができます。 このスクリプトの使い方、生成される図の見方等を紹介します。 スクリプトの実行方法 次のURLからダウンロードしてきて解凍すると、objc_dep.py というファイルが入っています。 https://github.com/nst/objc_dep そのスクリプトを適当な場所に置き、ターミナルから次のように実行します。 というコマンドになります。 依存関係図を表示 出力される.do
Thu, 19 Dec 2002 21:51:18 +0900 、初稿 なんでしょう? Ruby のメソッド呼び出しを見て、メソッドのコールグラフを描く Ruby スクリプトです。実際にグラフを書くのは Graphviz です。 なにが必要? ruby Graphviz (http://www.research.att.com/sw/tools/graphviz/) Graphviz の中にある、dot という実行ファイルにパスが通っていること このソフトで遊んでいられる心の余裕 どうやって使うの? ruby -r callg.rb x.rb とすることで、x.rb 実行中に呼び出したメソッドのコールグラフを作ります。 x.rb.dot というファイルを作り、デフォルトでは x.rb.dot.png なんていう PNG ファイルが出てきます。 ちなみに、ライブラリとして適当なフォルダに突っ
(追記:2014-3-3) Gvizについてのまとめ頁を作りました。 Gvizの目次 - Rubyの世界からGraphvizの世界にこんにちは! 数字は社会生活における便利な道具の一つです。一方でそれはまた多くの人々を魅了して止まない迷宮の世界です。つまり数字は実用と神秘なる美しさとを同時に兼ね備えた概念なのです。 というわけで… Gvizを使って今度は数字の美しさを表現してみようと思います。素数とフィボナッチ数を使います。 300までの数字を並べる まずは単純に1〜300までの数字を平面的に並べてみます。Gvizで300個のノードを生成し、neatoレイアウトで描画します。 require "gviz" max = 300 label = 'Numbers upto 300' Graph do global layout:'neato', label:label, fontsize:54
Graphvizというオープンソースのグラフ描画ツールがある これはマウスを使ってグラフオブジェクトを配置していくような 一般的なグラフツールとは違って DOTという言語を用いてスクリプトを記述し そこで表現されたグラフを視覚化するものだ 各要素の配置を望み通りにするのはちょっと難しいけど スクリプトを書き換えるだけでグラフの修正ができるので とても自由度が高くて便利だ このツールを使ってRuby1.9のクラス階層をグラフ化してみた でき上がった配置には若干の不満はあるけれども おおむねイメージ通りのものが書けた でも以下の点がうまくいっていない ObjectクラスからGeneralクラスへの継承ラインが必要だが、それを入れると現在の配置が崩れてしまう モジュール系をクラス系の右側に配置できない ラインの説明文をそれに合わせた色の矢印で示したい どなたか直せる人がいたらお願いします
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く