*可視化インタフェースツール [#ae1c9e96]
-入力テキストのデータ([[テキストデータ]]),ならびに処理ツールの処理結果として送られてくるデータを入力として,データを視覚的にわかりやすく出力します.
-[[''可視化インタフェースツール作成用ツールキット''>#k8b5fd70]]&color(blue){(''可視化ツール作成用ソース'')};

*可視化インタフェースツール作成の概要 [#gd114ae0]
-可視化インタフェースツール作成用の、''[[可視化モジュールクラス]]''(&color(red){VisualizationModule};)を継承(extends)してクラスを作成します。
-データを視覚的に表示するための処理は,&color(blue){displayOperations()}; メソッドの中から、呼び出される形で記述します。&color(blue){(''オーバーライド'')};
-パネルを作成するときに必要な初期化処理は、&color(blue){initializePanel()}; メソッドの中に記述します。&color(blue){(''オーバーライド'')};
--パネルが(再)構築されたときに呼び出されます。
-データの表示に必要な(再表示の際に必要な)初期化処理は、&color(blue){initializeData()}; メソッドの中に記述します。&color(blue){(''オーバーライド'')};
--入力テキストの再読み込みがあった場合など、再表示の命令があったときに呼び出されます。
-マイニング処理ツールの処理結果は、&color(blue){setData(int, ***)}; メソッドを作成することで,その第二引数を通じて受け取ります。&color(blue){(''オーバーライド'')};
--***の部分には受け取るデータの型が入ります。

**可視化インタフェースツールの構成 [#r71d16e8]
&ref(visuconst.png,,35%,);

**パネル初期化時の処理の流れ [#mbfe48df]
&ref(initMining2.png,,35%,);
&ref(InitMining2.png,,35%,);
**データ更新時(「再読込+実行」「再実行」「再処理を実行」)の処理の流れ [#mefe7577]
&ref(Retry.png,,35%,);
**データ送信の流れ [#e96a2c8b]
&ref(dataio.png,,35%,);

**サンプルプログラム [#hfa22849]
&ref(SampleDisplay.java);
:文字列を受け取って表示(JTextPaneベース)~
&ref(SampleDisplay2.java);
:平面上に背景,円,数字,文字を表示(draw系ベース)~


*作成の準備 [#jbb97b4e]

-module/VisualizationModules フォルダ内に,自分が作成するツール(クラス)名のフォルダ(たとえばMyVisual)を作成します.
--&color(red){モジュール名に使用できるのは,アルファベットか数字のみで,一文字目は大文字にする必要があります.};
-作成したフォルダ内に,ソースファイル MyVisual.java を用意します.
-VisualizationModule クラスのサブクラスとして実装します.
    例)  class MyVisual extends VisualizationModule

*コンストラクタの作成 [#xb6ea001]

-setModuleIDメソッドにより,ツールIDを与えます.(公開用に取得したID,または他のツールとかぶらないID)
    例)  setModuleID(4723);

-配列 dataNumbers を初期化して,処理ツールから受け取る,可視化に必要な各データ型のデータ数を記述します.
        dataNumbers = new int[]{0,0,0,1,    // boolean,int,double,String
            0,0,0,0,    // boolean[],int[],double[],String[]
            0,0,0};     // boolean[][],int[][],double[][]

--処理ツールからのデータが不要(すべての要素が0)な場合は,dataNumbers の初期化は省略可能です.

-[[ツールタイプ]]が,1:シンプル,2:プリミティブ,3:セミプリミティブ,に該当するときは,setToolType(int) メソッドにより,該当するタイプ番号をセットして下さい.
    例)  setToolType(2);

-コンストラクタ内には,[[可視化モジュールクラス]]のコンストラクタ用の処理以外は記述しないで下さい.

*変数の宣言 [#n9ed48af]

-クラス内のグローバル変数を宣言して下さい.
-宣言した変数の初期化とインスタンス化は,&color(red){''必ずいずれかのメソッド内で''};行って下さい.

*入力 [#e6452990]

**テキストデータ [#t1510c68]
-テキストデータの入力は,[[可視化モジュールクラス]]で定義されている TextData 型のインスタンス text を利用して下さい.
-テキストデータのみを入力として,処理ツールからのデータを必要としない場合,&color(red){シンプルツール(参考:[[ツールタイプ]])};となります.

**処理ツールからのデータ [#v2a27402]
-マイニング処理ツールからの入力を受け取るための &color(blue){''setData''}; メソッドを,必要に応じて定義([[可視化モジュールクラス]]で定義されているメソッドの''オーバーライド'')してください.

    boolean setData(int dataID, boolean data){}
    boolean setData(int dataID, int data){}
    boolean setData(int dataID, double data){}
    boolean setData(int dataID, String data){}
    boolean setData(int dataID, boolean data[]){}
    boolean setData(int dataID, int data[]){}
    boolean setData(int dataID, double data[]){}
    boolean setData(int dataID, String data[]){}
    boolean setData(int dataID, boolean data[][]){}
    boolean setData(int dataID, int data[][]){}
    boolean setData(int dataID, double data[][]){}

-全体を &color(red){switch(dataID) case 文};により記述し,各 case 文において,dataID のデータを受け取る処理を記述してください.
-&color(red){case 文};は,&color(blue){''0''}; から,&color(blue){''配列 dataNumbers の初期化時に指定した値-1''}; までの値の文を記述してください.
--上記以外の case 文を記述した場合,&color(red){(プリミティブ、セミプリミティブツール(参考:[[ツールタイプ]])の認定対象外となります)};
--上記のメソッドを1つだけ用いて,case 0: を記述した場合(かつ,受け取るデータが配列の時は,その要素数に関わらず可視化が可能な場合),&color(red){''プリミティブツール''};となります.
-データの受け取りに成功した場合は &color(blue){true}; ,失敗した場合は &color(blue){false}; を返すようにしてください.

-このメソッドによりデータを受け取るタイミングは,ペアとなる処理ツールに依存して,以下のいずれかとなります.
--処理ツール内で miningOperations() の case 0 が実行されるとき
--処理ツール内で miningOperations() の case 0 以外の case文 が実行されるとき
*自動実行メソッドの実装 [#kdc532ca]

-[[可視化モジュールクラス]]で用意されている下記のメソッドを,オーバーライドして実装してください.

***&color(red){[3.GUI初期化]}; void initializePanel(){} &color(red){(実装必須)}; [#h392524b]
-出力データ可視化用のGUIコンポーネント(表示パネル類)を生成する処理を記述して下さい.

***&color(red){[4.初期化と前処理]}; void initializeData(){} &color(red){(実装必須)}; [#r7cde5e5]
-可視化ツール内の変数の初期化,表示の前処理を記述して下さい.
-GUIコンポーネントのうち,入力データに依存するものの初期化は,こちらに記述してください.

***&color(red){[6.結果の描画]}; void displayOperations(int optionNumber){} &color(red){(実装必須)}; [#q5bb7739]
-全体を&color(red){switch(optionNumber) case 文};により記述した上で,&color(red){case 0:}; の箇所に,
可視化インタフェースの初期表示を生成する処理を記述してください.




*可視化処理の実装 [#l48379ad]

-必要に応じて displayOperations メソッドの case 文を増やして,可視化のパターンを変更する処理を実装して下さい.

*コンパイル [#s5a7a287]

-統合環境の tetdm フォルダ内で make または ant でコンパイルしてください.(自動的に統合環境に組み込まれます)
--makeまたはantコマンドが無い場合は,コマンドをインストールしてください.
--Windowsのコマンドプロンプトでは,Makefileに記述されているjavacコマンド内のワイルドカード*が使用できないことがあります.
---その場合,antコマンドを使用できるようにしていただくか,cygwinなどのターミナルソフトのインストールが必要です.
--&color(blue){antコマンドでコンパイルを行った場合,各フォルダ内にclassファイルは作成されませんが動作には問題ありません.};

*可視化ツール作成用ツールキット [#k8b5fd70]

-&color(blue){可視化ツール作成用ソース1};
&ref{VisualizationToolKit.zip};
-VisualizationToolKit.java
-VisualizationToolKit.txt
-Japanese.txt
-README.txt
--処理ツール「データ送信テスト」などと組み合わせると動作確認できます
--画面中心部に、標語と受け取ったデータを表示(標語は日本語と英語で切り替え可能)
---日本語と英語の切り替えは,「キーワード設定」最下部の「メニューを日本語にする」のチェックで行えます.
--処理ツールから String 型の配列を1つ受け取ります(送られたデータが String 型配列でなくても[[データ型コンバート]]によりデータの受け取りが可能)
--プリミティブツール([[ツールタイプ]])

-&color(blue){可視化ツール作成用ソース2};
&ref{VisualizationToolKit2.zip};
-VisualizationToolKit2.java
-VisualizationToolKit2.txt
-Japanese.txt
-README.txt
-ソース1の内容に,以下が追加されています.
--データを四角で囲んで表示し,マウスでドラッグ可能
--マウスで選択中のデータをハイライト表示
--マウスで背景をドラッグすることによって,全データをドラッグで移動可能
--受け取ったデータや,データを表示する座標をもつクラスを生成

-&color(blue){可視化ツール作成用ソース3};
&ref{VisualizationToolKit3.zip};
-[[データ表示用クラス]] DisplayObject を利用したソース2です.

-&color(blue){可視化ツール作成用ソース4};
&ref{VisualizationToolKit4.zip};
-[[データ表示用クラス]] DisplayNetwork を利用したソース2です.

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS