meeting6 hands on eXpanda on KNOB

Toshiaki Katayama edited this page Mar 25, 2017 · 1 revision

eXpanda をダウンロード

wget http://medcd.iab.keio.ac.jp/expanda/eXpanda-1.0.3.tar.gz
  • expanda keio でグーグルすると4番目くらい

メイクする

tar zxvf eXpanda-1.0.3.tar.gz
cd eXpanda-1.0.3
perl Makefile.PL

足りないmodulesをひたすらyでインストールする

CPANの設定が必要な場合 /home/knoppix/.cpan/CPAN/MyConfig.pm の 'urllist' の値を変更する。

'urllist' =>  [q[ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/]],

サンプルの MyConfig.pm

$CPAN::Config = {
  'build_cache' => q[10],
  'build_dir' => q[/home/knoppix/.cpan/build],
  'cache_metadata' => q[1],
  'cpan_home' => q[/home/knoppix/.cpan],
  'cpan_version_check' => q[1],
  'dontload_hash' => {  },
  'ftp' => q[/usr/bin/ftp],
  'ftp_proxy' => q[],
  'getcwd' => q[cwd],
  'gpg' => q[/usr/bin/gpg],
  'gzip' => q[/bin/gzip],
  'histfile' => q[/home/knoppix/.cpan/histfile],
  'histsize' => q[100],
  'http_proxy' => q[],
  'inactivity_timeout' => q[0],
  'index_expire' => q[1],
  'inhibit_startup_message' => q[0],
  'keep_source_where' => q[/home/knoppix/.cpan/sources],
  'lynx' => q[/usr/bin/lynx],
  'make' => q[/usr/bin/make],
  'make_arg' => q[],
  'make_install_arg' => q[],
  'makepl_arg' => q[INSTALLDIRS=site],
  'ncftp' => q[],
  'ncftpget' => q[],
  'no_proxy' => q[],
  'pager' => q[lv],
  'prerequisites_policy' => q[ask],
  'scan_cache' => q[atstart],
  'shell' => q[/bin/bash],
  'tar' => q[ [3~],
  'term_is_latin' => q[1],
  'unzip' => q[/usr/bin/unzip],
  'urllist' => [q[ftp://ftp.dti.ad.jp/pub/lang/CPAN/], q[ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/], q[ftp://ftp.jaist.ac.jp/pub/lang/perl/CPAN/], q[ftp://ftp.nara.wide.ad.jp/pub/CPAN/]],
  'wget' => q[/usr/bin/wget],
};
1;
__END__

メイクするとmodulesをインストールしはじめる。途中でグラフが表示されるけどおどろかない。

make

サンプルを実行してみる

cd examples
perl -I../lib example01.pl

sample01.svg が生成される。svgファイルはIceweaselやFireFoxで開くことができる

eXpandaプログラミング

example01.pl をもとにして。 Applyメソッドを利用してノードの色を赤くする。

$str->Apply(
            "-object" => 'node:graphics:fill',
            "-value" => 'red'
            );

つぎ

$str->Analyze( -method => 
$str->Apply(
            "-degree" => '',
           );

要望など

  1. module直下にインストールされているのはいくなくない?