特集 ニュース コラム Plug-in・カスタム関数 関連製品・サービス 書籍
活用事例 コミュニティ・リンク 人材募集
 

xmCHART

グラフ描画の決定版プラグイン。使い方を工夫すれば、グラフだけではなく、図を描いたり、いろんなことに使えます。

発売元:X2max Software
URL:http://www.x2max.com


インストール方法



インストールの方法は非常に簡単。プラグインをアプリケーションフォルダ内の「ファイルメーカー機能拡張(mac)」または
「system(windows)」に入れて、 アプリケーション環境設定でプラグインを選択します。
デモ版(シリアルなし)は2時間の連続使用が可能です。(2時間が経過すると、グラフ描画しようとしたときに
「時間切れです」とメッセージが表示されます。
ライセンスを購入したら、スクリプトからシリアル番号設定を行います。
以下のスクリプトステップを実行してください。
フィールド設定
「g_txt」「External("xmCH-GetVersion","USERNAME|SERIAL NUMBER")」
(設定するフィールドは任意のもの。ここではグローバルテキストフィールドに一時的に設定。最初に一度設定をすれば
シリアル番号は登録されます)


使ってみました


282ページもある膨大なリファレンスがあるのですが、それを最初からひもといていくのはかなり大変です。
プラグインをダウンロードすると、便利なサンプルファイルがついてきますので、まずはサンプルファイルを開いて、
データをかえてグラフを再描画してみましょう。
xmCHART Documentation フォルダ>Exampleフォルダ内には、シンプルな円グラフや棒グラフのサンプルが含まれています。

まずはじめにこのフォルダ内のサンプルを開いて少し中身をのぞいてみることにします。
多くのプラグインでは、グローバルフィールドなどに「フィールド設定」スクリプトステップを使ってExternal
ではじまる外部関数の計算結果(引数など)を設定することによって結果を得ることができます。
xmCHARTの場合、計算結果(グラフですね)はクリップボードに入りますから、結果をオブジェクトフィールドにペースト
してあげるようにスクリプトを設定して一連の描画作業が完了します。

 

図1 xmCHARTで描画した円グラフ


<グラフ描画の流れ 例>

・グラフ描画用のソースコードを作成しておく->gSourceフィールドへ

OpenDrawing(400;300)
ChartData(<gData>)
PieChart(oval+label+shadow)
BorderStyle(all;0) // hide borders
PieChartAuxLines() // labels with auxiliary lines
LabelTexts(1;<gLabels>)
LabelStyle(all;"Verdana";10;;;center) // labels centered
LabelBackground(all;lightYellow;;1;;;2)
CloseDrawing()


・グローバルフィールドにデータ配列を格納する(凡例などのラベルデータも同時に作成しておく)
  必要なデータをスペース区切りの文字列として取得するために、loopスクリプトステップを使って、 データを作成する。作成されたデータは以下のようなものになります。

データ部分 - gDataフィールドへ

30 4,2 10,1 0 5,2 4 1,2

データのひとつのシリーズはカンマで区切ります。

凡例部分 -gLabelsフィールドへ

Category A ¥n |u| ¥n (|f1|%)";"
Category B ¥n |u| ¥n (|f1|%)";"
Category C ¥n |u| ¥n (|f1|%)";"
Category D ¥n |u| ¥n (|f1|%)";"
Category E ¥n |u| ¥n (|f1|%)";"
Category F ¥n |u| ¥n (|f1|%)";"
Category G ¥n |u| ¥n (|f1|%)"


凡例はセミコロン(;)で区切ります。 数字の書式設定はu,f1 , などで表記されます。

・ソースコードのデータ部分<Data>の文字列と、グローバルフィールド内のデータ配列を置換する
 フィールド設定を使って、以下のように文字列とフィールド内容を置き換えます。わかりやすいように2行で書きましたが、
1行にまとめて行うこともできますね。

フィールド設定「gSource」「 Substitute(gSource,"<gData>",gData)」
フィールド設定「gSource 」「Substitute(gSource,"<gLabels>",gLabels)」

フィールド設定をして、計算結果を得る

フィールド設定「gResult」「External("xmCH-DrawChart", gFunctions)」

ここでうまくいけばグラフ画像がクリップボードに入るのでペーストしておしまいです。
・オブジェクトフィールドに結果をペースト

ペースト「Chart」


さて、もっと複雑なグラフを描きたい場合はどうしたらよいのでしょうか。
xmCHART Gallery フォルダに入っているxmGALLERY.FP5を開いてみます。
200個以上のサンプルグラフとサンプルコードが表示されています。折れ線、円、ガントチャート、レーダーチャート、ほかびっくりするほど芸が細かいのですが、まずはサンプルコード内のデータ部分の数字や、描画の引数などを変更して、動作を確認してみましょう。
ソースコードの詳細設定については膨大なリファレンスファイルを参照して、変更してみましょう。
2種類のグラフの組み合わせなどもできますし、エリア内にいくつもグラフ描画領域を指定することができるので、横に比較グラフを表示させたり、など、かなり自由で高度な描画が可能です。





図2 xmGalleryの一部。こんなことまでファイルメーカーProでできてしまう!

日本語対応について


株式会社フォーサイトから日本語版が発売されています。

ver7対応について


販売元には「完全対応済み」との記載があります。

[2004/11/15]
[有限会社ジェネコム 村上ゆりか]

FMPro.jpについて |  利用規約 |  ポリシー |  お問い合わせ