MATHEMATICA HOW TO

How to | CDFファイルを作成する方法

CDF(Computable Document Format.計算可能なドキュメント形式)ファイルは,Mathematica 言語のパワーと柔軟性を活用した強力な配備メソッドを公開形式によって幅広く提供する. Mathematica 8の組込み機能であるため,作業中のノートブック,カスタムの論文や記事,ワークフローあるいは専用のアプリケーション配備から直接.cdfファイルに保存することは簡単である.Mathematica で計算するものであれば何でもユーザがインタラクトできるオブジェクトにして,概念を最も明確に提示することができる.また,Wolfram CDF Player で見るだけのためにドキュメントを作成する場合に特別な考慮を払う必要はない.すべてのノートブック機能は表示,印刷することができる.

CDFファイルは,既存のノートブックから作成することも,一から新しく作成することもできる.Mathematica ノートブックに含むことができるものであれば何でもCDFファイルに含むことができる.

新しい.cdfファイルを作成する方法の中で最も簡単なのは,メニューからファイル ► 新規作成 ► FreeCDF (.cdf)を選ぶ方法である:

新規のノートブックを開く場合と同じように,空白の新規ウィンドウが表示される.このウィンドウに,Mathematica ノートブックの場合と同じようにコンテンツを加えることができる.

Mathematica ノートブックと.cdfファイルの一番の違いは,CDF Player を使ってドキュメントを見たときに許されるインタラクションの度合である.ノートブックファイル(拡張子.nbのファイル)が CDF Player では静止ドキュメントとして見ることができるのに対して,.cdfファイルで提示されたManipulateオブジェクトはどれでも CDF Player で完全にインタラクティブである.

例えば,以下の出力が.cdfファイルに加えられると,CDF Player を使ってこのドキュメントを見るユーザがスライダーをインタラクティブに動かすことができるようになる:

インタラクティブなコンテンツと静的コンテンツを.cdfファイルの中で自由に組み合せることができる.例えば,インターフェースにヘッダを加えることができる:

ただし,このように作成された.cdfファイルのコンテンツすべてがインタラクティブなわけではない.詳細については,「.cdfファイルのインタラクティブ機能」を参照されたい.

    

開いたノートブックは2つの方法のいずれかを使って,.cdfファイルに変換することができる.別名で保存メニューを使う方法と,CDFエキスポートメニュー項目を使う方法である.CDFエキスポートメニュー項目あるいは既存のHTMLに.cdfファイルを埋め込む方法についての詳細は,「.cdfファイルを配備する」のセクションを参照のこと.

別名で保存メニューを使う場合は,Mathematica でノートブックを開き,ファイル ► 別名で保存...を選ぶだけでよい:

そして表示されるファイルブラウザウィンドウでファイルの種類:の横のドロップダウンメニューからCDFドキュメント (*.cdf)を選ぶ:

これだけの操作でノートブックは CDF Player で開くことができるインタラクティブな.cdfファイルに変換される.

    

.cdfファイルを作成する3つ目のオプションとしてExportを使用する方法がある.ImportExportはどちらも完全に"CDF"ファイル形式をサポートする.

以下は,Manipulateの出力を含むNotebook式の例である:

In[1]:=
Click for copyable input

上の入力を評価すると,以下のようなノートブックが開く:

このノートブック式から.cdfファイルを作成する場合は,他のファイル形式を使う場合と同じようにExportを使って作成する:

In[2]:=
Click for copyable input
Out[2]=

.cdfファイルを配備する

ファイル ► CDFエキスポートメニュー項目を使うと,.cdfファイルをスタンドアロンのドキュメントとして保存,あるいはドキュメント全体か特定の選択範囲を既存のHTMLコードに埋め込むことができる.

スタンドアロンの.cdfファイルを作成する場合は,ファイル ► CDFエキスポート ► スタンドアロン...のメニュー項目を選ぶ:

メニュー項目をクリックすると,以下のウィンドウが表示される:

ウィザードの指示に従って,スタンドアロンの.cdfファイルを保存する.ドキュメント全体ではなく,ノートブックから選択した部分だけを保存したい場合は,ウィザードを開く前に配備したい部分を選択しなければならないことに注意する.

    

Webページに埋め込む.cdfファイルを作成したい場合は,ファイル ► CDFエキスポート ► Webに埋め込む...のメニュー項目を選ぶ:

メニュー項目をクリックすると,以下のウィンドウが表示される:

ウィザードの指示に従って,ドキュメントの全体あるいは選択範囲を.cdfファイルとして保存し,Webサーバのどこに.cdfファイルを置くかを指定する.するとウィザードによって,既存のHTMLファイルにコピーアンドペーストできるHTMLコードが与えられる.スタンドアロンのファイルの場合と同じように,ドキュメント全体ではなく,ノートブックから選択した部分だけを保存したい場合は,ウィザードを開く前に配備したい部分を選択しなければならないことに注意する.

.cdfファイルのインタラクティブ機能

Mathematica で使用できる関数のほとんどすべてが CDF Player 用のアプリケーションを構築する際に使えるが,以下のようなプログラミング上の制約がある.

  • インタラクティブなコンテンツはすべてManipulateコマンドを使って生成したものでなくてはならない.また,SliderLocatorCheckboxPopupMenu等のマウスで動かす要素しか使うことができない.
  • ダイアログウィンドウはサポートされていない.
  • J/Link および .NET/Link を含む MathLink 操作はサポートされていない.
    • Wolfram精選のデータソース(ChemicalDataCountryDataWordData等)を除いて,CDF Player 内からのデータのインポートとエキスポートはサポートされていない.

    CDF Player はカスタムデータをランタイムでロードすることができないので,すべての必要な情報が.cdfファイルのインタラクティブな要素内に埋め込まれているようにしなければならない.これはInitializationあるいはSaveDefinitions(どちらもManipulateのオプション)を使って行うことができる.

    Initialization オプションを使って,以下の簡単な例のように,小さなコードやデータをインタラクティブな出力に含むことができる:

    

もう少し大きなコード,パッケージ,データ集合については,これらをManipulate出力を作成する前に定義してから,その状態を出力内にSaveDefinitionsオプションを使って保存した方が便利である場合もある.以下の簡単な例は,Initializationを使わずに上の例を作成したものである:

In[2]:=
Click for copyable input
Out[4]=

.cdfファイルで任意の入力,ダイアログウィンドウ,外部データのロード等のより高レベルのアプリケーションコンテンツをアクティベートさせる方法については,Wolfram Researchにお尋ねください.

New to Mathematica? Find your learning path »
Have a question? Ask support »