統合JavaソフトJustArks/CalcArkXMLデータの分析とグラフ化
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
//このページでは、JustArkの様々な面に焦点を当てて、Ark開...
&size(24){XMLデータの分析とグラフ化 ~CalcArkでXMLデータ...
-----
・はじめに
・XML関数プラグインの概要とインストール
・集計、グラフ化
・外部参照
・テンプレート
・おわりに
***はじめに [#vdb67640]
//みなさんこんにちは。CalcArk ワークシート関数担当のHで...
さて、皆さんは XML のデータを集計したりグラフ化したりする...
XSLT、そして SVG が勧告になった現在、XSLT ファイルを用意...
方も多いのではないでしょうか。
しかしながら、XSLT や SVG の仕様は必ずしも容易に理解でき...
作成するのを面倒に思ったことはあるはずです。
そして、もっと手軽に、目で確認しながら、集計したりグラフ...
CalcArk と XML関数プラグインがそれを解決してくれます。
XSLT ファイルは要りません。
SVG の仕様を知らなくても、グラフが作成できます。
CalcArk には、XSLT を遙かに上回る数の関数が用意されていま...
表形式なので、XML をデータベース的に扱うのに適しています。
勿論、ソートもできます。
そして何よりも、目で確認しながら結果を得ることができます。
***XML関数プラグインの概要とインストール [#mb2dd707]
今回は、「XML のデータを取得する」という課題に、「ワーク...
何故、ワークシート関数なのか、については後述します。
現在の XML 関数プラグインは大きく2つの機能を提供していま...
1つは、XPath による XML データの取得で、もう1つは、Calc...
どのような関数があるかについては、[ツール-プラグイン-設...
何はともあれ、まずは動かしてみましょう。
以下の手順に従って、インストール、動作確認を行ってくださ...
XML関数プラグインを、プラグインダウンロードページからダウ...
JAXP1.1 に対応した XML パーサーと、Xalan2 をクラスパスの...
Xalan2 が必要なのは、XML関数プラグインが XPath の機能を利...
Xalan2 はApache XML Projectからダウンロードできます。
因みに、筆者は XML パーサーに Xerces1 を使いました。
参考までに、動作確認したモジュールのバージョンは Xerces1....
JAVA_HOME/jre/lib/ext に xalan.jar(886KB), xerces.jar(177...
CalcArk を起動する。
[ツール-プラグイン-設定] のUIで、「プラグイン」のとこ...
これで、インストールは完了です。
***集計、グラフ化 [#g74c06d1]
ある機関から、各都道府県の面積と人口のデータが XML で提供...
この XML データから、CalcArk で日本の総人口を求めて(集計...
この集計結果をファイルにしたものが http://www.justsystem....
CalcArk を起動して、[ファイル-URLを開く]UIの URL 欄に...
(※プロキシの設定が必要な場合は、それも忘れずに)
シート「一覧」の A 列には各都道府県の名前が入力されており...
例えば、C5 セルには、以下の数式が入力されています。
=VALUE(SelectSingleNodeValue($F$2,G5,TRUE))
(XML関数プラグインが提供している)SelectSingleNodeValue ...
参照先の F2 セルや G5 セルを再表示すると、F2 セルには、先...
//prefecture[@name='北海道']/population/man/text()
という XPath 式であることが分かります。これは「name 属性...
SelectSingleNodeValue 関数は、データを文字列で返しますの...
そして、最終的に 52 行目で SUM 関数を使って集計しています。
また、その結果を元にして、シート「ランク」で上位5県をグ...
|&ref(./screen1.gif,25%);|&ref(./screen2.gif,25%);|
画面イメージ 画面イメージ
***外部参照 [#f8f8381d]
CalcArk を使えば、申請書や見積書等の帳票は簡単に作成でき...
今、社内の各部署から、毎日のように様々な購入申請が作成さ...
経理であるあなたは四半期分の経費を計算しなければいけませ...
決まったフォーマットで作成されているため、 この場合、セル...
さて、どうするか。
XSLT ファイルを用意するのは面倒です。CalcArk を使いましょ...
CalcArk の標準の機能では、他ブック(外部ファイル)への参...
=[foo.html]Sheet1!A1
のようにして、foo.html の Sheet1 のセル A1 の値を参照する...
=XCell("foo.html","Sheet1",1,1)
となります。第1引数に「CalcArkXHTMLファイルのURI」、第2...
今までと同様に、 http://www.justsystem.co.jp/ark/genba/fi...
それぞれのデータを取得するのに XCell 関数を利用し、セル F...
画面イメージ
|&ref(./screen3.gif,25%);|&ref(./screen4.gif,25%);|
画面イメージ
***テンプレート [#z47f72ce]
ここまで見てきて、何か気がつかれたことはありませんか?
population.xml のデータを集計、グラフ化する population.ht...
これらは全て、あるデータを集計、分析、グラフ化する「テン...
そして、これが XML のデータ抽出を、関数プラグインとして提...
抽出方法を数式としてファイルに埋め込めるので、テンプレー...
抽出結果がセルなので、カスタマイズ(テンプレート化)し易...
ファイルを読み込むだけで、分析(グラフ化)が可能。つまり...
データの形式を問わない。今回は XML でしたが、データの形式...
元データが変更されても、dynamic に追従できる。
例えば population.xml のデータの一部が変更されても、popul...
おわりに
***ちょっとまとめると [#h7fbc648]
クライアントには CalcArk だけがあれば十分です。勿論、OS ...
サーバーに、元データと集計ファイル(テンプレートファイル...
元データが変わっても、自動的に集計結果、グラフも変わりま...
URL から読み込んで、必要になれば、IDisk Tool for Java で...
一太郎Ark や PrezArk の文書も、勿論 XML(XHTML) なので、集...
XML関数プラグインはソースも公開していますので、参考にして...
//プラグインに関して、不具合・要望などありましたら、Ark D...
終了行:
//このページでは、JustArkの様々な面に焦点を当てて、Ark開...
&size(24){XMLデータの分析とグラフ化 ~CalcArkでXMLデータ...
-----
・はじめに
・XML関数プラグインの概要とインストール
・集計、グラフ化
・外部参照
・テンプレート
・おわりに
***はじめに [#vdb67640]
//みなさんこんにちは。CalcArk ワークシート関数担当のHで...
さて、皆さんは XML のデータを集計したりグラフ化したりする...
XSLT、そして SVG が勧告になった現在、XSLT ファイルを用意...
方も多いのではないでしょうか。
しかしながら、XSLT や SVG の仕様は必ずしも容易に理解でき...
作成するのを面倒に思ったことはあるはずです。
そして、もっと手軽に、目で確認しながら、集計したりグラフ...
CalcArk と XML関数プラグインがそれを解決してくれます。
XSLT ファイルは要りません。
SVG の仕様を知らなくても、グラフが作成できます。
CalcArk には、XSLT を遙かに上回る数の関数が用意されていま...
表形式なので、XML をデータベース的に扱うのに適しています。
勿論、ソートもできます。
そして何よりも、目で確認しながら結果を得ることができます。
***XML関数プラグインの概要とインストール [#mb2dd707]
今回は、「XML のデータを取得する」という課題に、「ワーク...
何故、ワークシート関数なのか、については後述します。
現在の XML 関数プラグインは大きく2つの機能を提供していま...
1つは、XPath による XML データの取得で、もう1つは、Calc...
どのような関数があるかについては、[ツール-プラグイン-設...
何はともあれ、まずは動かしてみましょう。
以下の手順に従って、インストール、動作確認を行ってくださ...
XML関数プラグインを、プラグインダウンロードページからダウ...
JAXP1.1 に対応した XML パーサーと、Xalan2 をクラスパスの...
Xalan2 が必要なのは、XML関数プラグインが XPath の機能を利...
Xalan2 はApache XML Projectからダウンロードできます。
因みに、筆者は XML パーサーに Xerces1 を使いました。
参考までに、動作確認したモジュールのバージョンは Xerces1....
JAVA_HOME/jre/lib/ext に xalan.jar(886KB), xerces.jar(177...
CalcArk を起動する。
[ツール-プラグイン-設定] のUIで、「プラグイン」のとこ...
これで、インストールは完了です。
***集計、グラフ化 [#g74c06d1]
ある機関から、各都道府県の面積と人口のデータが XML で提供...
この XML データから、CalcArk で日本の総人口を求めて(集計...
この集計結果をファイルにしたものが http://www.justsystem....
CalcArk を起動して、[ファイル-URLを開く]UIの URL 欄に...
(※プロキシの設定が必要な場合は、それも忘れずに)
シート「一覧」の A 列には各都道府県の名前が入力されており...
例えば、C5 セルには、以下の数式が入力されています。
=VALUE(SelectSingleNodeValue($F$2,G5,TRUE))
(XML関数プラグインが提供している)SelectSingleNodeValue ...
参照先の F2 セルや G5 セルを再表示すると、F2 セルには、先...
//prefecture[@name='北海道']/population/man/text()
という XPath 式であることが分かります。これは「name 属性...
SelectSingleNodeValue 関数は、データを文字列で返しますの...
そして、最終的に 52 行目で SUM 関数を使って集計しています。
また、その結果を元にして、シート「ランク」で上位5県をグ...
|&ref(./screen1.gif,25%);|&ref(./screen2.gif,25%);|
画面イメージ 画面イメージ
***外部参照 [#f8f8381d]
CalcArk を使えば、申請書や見積書等の帳票は簡単に作成でき...
今、社内の各部署から、毎日のように様々な購入申請が作成さ...
経理であるあなたは四半期分の経費を計算しなければいけませ...
決まったフォーマットで作成されているため、 この場合、セル...
さて、どうするか。
XSLT ファイルを用意するのは面倒です。CalcArk を使いましょ...
CalcArk の標準の機能では、他ブック(外部ファイル)への参...
=[foo.html]Sheet1!A1
のようにして、foo.html の Sheet1 のセル A1 の値を参照する...
=XCell("foo.html","Sheet1",1,1)
となります。第1引数に「CalcArkXHTMLファイルのURI」、第2...
今までと同様に、 http://www.justsystem.co.jp/ark/genba/fi...
それぞれのデータを取得するのに XCell 関数を利用し、セル F...
画面イメージ
|&ref(./screen3.gif,25%);|&ref(./screen4.gif,25%);|
画面イメージ
***テンプレート [#z47f72ce]
ここまで見てきて、何か気がつかれたことはありませんか?
population.xml のデータを集計、グラフ化する population.ht...
これらは全て、あるデータを集計、分析、グラフ化する「テン...
そして、これが XML のデータ抽出を、関数プラグインとして提...
抽出方法を数式としてファイルに埋め込めるので、テンプレー...
抽出結果がセルなので、カスタマイズ(テンプレート化)し易...
ファイルを読み込むだけで、分析(グラフ化)が可能。つまり...
データの形式を問わない。今回は XML でしたが、データの形式...
元データが変更されても、dynamic に追従できる。
例えば population.xml のデータの一部が変更されても、popul...
おわりに
***ちょっとまとめると [#h7fbc648]
クライアントには CalcArk だけがあれば十分です。勿論、OS ...
サーバーに、元データと集計ファイル(テンプレートファイル...
元データが変わっても、自動的に集計結果、グラフも変わりま...
URL から読み込んで、必要になれば、IDisk Tool for Java で...
一太郎Ark や PrezArk の文書も、勿論 XML(XHTML) なので、集...
XML関数プラグインはソースも公開していますので、参考にして...
//プラグインに関して、不具合・要望などありましたら、Ark D...
ページ名: