Maple 11 におけるグラフィックスの改良点
Maple 11 にはグラフィックス・可視化機能に関して次の改良が施されています。
|
主な改良点
|
|
|
以下の項目はこのヘルプページで記述されている Maple のプロット機能の主な改良点です。詳細な情報については、各項目のヘルプページをご覧ください。
|
•
|
2 次元プロット形式とパフォーマンスの改善 - 2 次元プロットはより高速かつ少メモリで実現されるよう大幅に改良されています。
|
•
|
プロットの配列 - plots[display] コマンドで生成された複数プロットの配列は、自動的に個々のグラフを配置したテーブル構造で描画されます。2 次元・3 次元を組み合わせた配列でも可能です。
|
•
|
プロット中でのタイプセッティングの利用 - タイプセット(組版された)文字列や数式を 2 次元のプロットで利用できます。
|
•
|
国際語化 - 対応するフォントがインストールされていれば、2 次元プロット中で各国語文字を用いることが可能です。
|
•
|
新オプション - キャプションの追加やレジェンド位置の変更のための新オプションが利用できます。
|
•
|
更新されたオプション - 曲線・点、軸メモリなどで用いる新しい線種やシンボルが用意されました。
|
•
|
拡張されたカラー名 - Maple で利用できるカラー名が拡張されています。新コマンド plots[setcolors] では 2 次元曲線のデフォルトのカラー値を指定できます。
|
|
|
2 次元プロットの主な改良点
|
|
|
このセクションでは、Maple 11 における 2 次元プロットのパフォーマンスや見た目の部分に関する主な改良点を説明しています。
|
•
|
プロットの速度 - プロット類は今まで以上に高速かつ少メモリで描画されます。
|
•
|
軸メモリ - 2 次元プロットの軸メモリの生成方法が改良されました。新しいアルゴリズムでは、与えられたレイアウト条件に基づいて最適な軸メモリを提供します。また、ユーザ定義で軸メモリ間のスペース(間隔)や部分軸メモリを生成できます。
|
•
|
プロット中のタイプセッティング(組版) - タイプセットされたテキストや数式がプロット上の好きな場所に配置できるようになりました。これには plots[textplot] コマンドを通じて生成されたテキストも含まれます。なお、このコマンドには次のオプションが用いられます:キャプション、ラベル、レジェンド、軸メモリ、およびタイトル
|
>
|
plot(x^2/(x+5), x=1..5, caption=typeset("A plot of ", x^2/(x+5), "."));
|
•
|
国際語化 - 2 次元プロットではあらゆる種類の言語の文字フォントを使えます。
|
•
|
フォント - お使いのシステムで用意されているフォントに依存しますが、広範な種類のフォントをプロットで用いることができます。システム側でサポートされている各種フォントのフォントファミリ名を既存のオプション中で指定することが可能です。
|
•
|
ハイライト機能 - マウスによるロールオーバーや選択時のハイライト機能が大幅に変更されています。マウスでの選択では、選択した半透明オブジェクトをハイライトすることで指定できます。また、ロールオーバーではオブジェクトの頂点に描画されているシンボルを選択することで指定できます。なお、ロールオーバーでのハイライト機能が利用できるように設定しておく必要があります。メインメニューのツールからオプションを選択し、表示タブを選び、マウスをプロットにロールオーバーした時にハイライトにチェックを付けておいてください。
|
•
|
Windows メタファイルへの出力 - 2 次元プロットが Windows Meta File (WMF フォーマット)に出力される際、無制限にスケール化したベクトルとして書き出されます。
|
•
|
コンテキストメニュー - メニューフォーマットが拡張され、軸のプロパティボックスが追加されました。
|
•
|
レジェンド - レジェンドに長い文字列を利用できるようになり、複数レジェンドのフォーマットが拡張されています。
|
•
|
数値範囲 - 2 次元プロットに対する数値範囲が拡大されています。10^+200 から 10^-200 までの値が正しく表現されます。数値 1.0 について +/- 10^-9 のレベルまで正しく表現できます。
|
•
|
パン・スケール - プロットのパン(移動)とスケール(拡大・縮小)機能はその取り囲まれている領域内のプロット自体を移動・拡大・縮小するものではありません。代わりに、プロットの view の範囲を変更します。
|
•
|
ズームファクタ - プロット内の文字列がズームファクタの影響を受けるようになります。
|
|
|
プロットコマンドの新機能および更新内容
|
|
•
|
プロットの配列 - plots[display] コマンドで作られたプロットの配列が個々のプロット上で各種の変更修正がしやすいドキュメントのテーブル機能を用いて表示されます。2 次元・3 次元共にひとつの配列で表示することが可能です。
|
>
|
A := Array(1..2, 1..2):
A[1,1] := plot(sin(x), x=-Pi..Pi, axes=framed):
A[1,2] := plot(cos(x), x=-Pi..Pi, axes=boxed, style=point):
A[2,1] := plot3d((1.5)^x*sin(y), x=-3..3, y=-3..3, axes=boxed):
A[2,2] := plot3d((1.3)^x*sin(y), x=-1..2*Pi, y=0..Pi, coords=spherical,
style=patch, axes=boxed):
plots[display](A);
|
•
|
3 次元曲面の交差部分のプロット - 新しい plots[intersectplot] コマンドで、媒介変数や陰関数などあらゆる種類の 2 つの曲面の交差部分のプロットを描画できます。例えば、2 つの球、1 つは陰関数でもう 1 つが媒介変数で表示されている 2 個の球の交差部分を以下で表示しています:
|
>
|
plots[intersectplot](
surface((x-1)^2+(y-1)^2+z^2-1,x=-3..1,y=-3..1,z=-2..2),
surface([sin(s)*cos(t),sin(s)*sin(t),cos(s)],s=0..Pi,t=-Pi..Pi),
view=[0..1,0..1,-0.72..0.72],axes=boxed
);
|
•
|
陰関数のプロット - plots[implicitplot] コマンドに新しいオプションが追加され、また描画効率が大幅に改善されました。新オプションは陰関数プロットを効率良く精緻化するために用いられるもので、多項式で与えられた 2 つの表現式を特定変数に関して消去する終結式(resultant)として直接的に陰関数のプロットを計算します。これにより、プロット内の特異点の存在を表現できるように曲線を補間したり、精緻化のレベルを落とすことなくプロットに対する評価点の個数を減らすことが可能です。
|
>
|
plots[implicitplot](
[x^2+y^2+z^2=1, (x+z/2)^2/(5/4)+y^2=1/3, z],
x=-1..1, y=-1..1, gridrefine=2, scaling=constrained);
|
>
|
fn := (x^2+y^2-1)*(x^2+y^2-0.73)*(x^2+y^2-0.5)*(x^2+y^2-0.31):
plots[implicitplot](fn, x=-1.2..1.2, y=-1.2..1.2, grid=[51,51],
gridrefine=2, crossingrefine=2, resolution=1000);
|
•
|
密度線のプロット - plots[densityplot] コマンドが改良され新オプションが追加されています。新オプションは brightness, contrast, および scaletorange です。
|
>
|
plots[densityplot](x*(x^2-y^2)/(x^2+y^2)^2, x=-0.1 .. 0.1, y=-0.1 .. 0.1,
grid=[64,64], style=patchnogrid, brightness=0.7, contrast=0.7);
|
•
|
アニメーション - plots[animate] コマンドに新しく trace オプションが追加され、アニメーション中で n フレーム毎に形跡を残すことが可能です。
|
|
|
新規または更新されたオプション
|
|
•
|
キャプション - 新しい caption オプションは 2 次元または 3 次元プロットの下部に追加されるキャプションを追加するために用いられます。
|
•
|
レジェンドのスタイル - 新しい legendstyle オプションはレジェンドの位置(2 次元プロットの右、左、上、下)およびそのフォントを指定するために用いられます。
|
•
|
軸 - tickmarks サブオプションが axis オプションに追加されました。軸目盛りの個数は通常の tickmarks=[m, n] オプションを使って指定されます。詳細については plot/axis を参照してください。
|
•
|
軸目盛り - 軸目盛りとグリッド線の隙間は新しい spacing 構造を用いて指定できます。それぞれの隙間は Pi やその他の数学定数で指定でき、軸目盛りのラベルは可能ならば表示されます。詳細は plot/tickmarks を参照してください。
|
>
|
plot(cos(x), x=-2*Pi..2*Pi, tickmarks=[spacing(Pi/2), default]);
|
•
|
線種 - 新しく linestyle オプションの値に次の変数が指定できるようになりました: longdash, spacedash, spacedot.
|
•
|
シンボル - 2 次元プロットで利用できる symbol オプションの値に次が追加されました: asterisk, diagonalcross, solidbox, solidcircle および soliddiamond。 3 次元プロットについては次の値が利用できます: asterisk, diagonalcross, sphere および solidsphere.
|
>
|
plots[pointplot]([[0,1], [1,-1], [3,0], [4,-3]], axes=boxed,
symbol=solidcircle);
|
•
|
塗潰し領域(Filled Regions) - plots パッケージの陰関数およびコンター線で使われる filled オプションは、 2 次元および 3 次元プロットで一般に使われる filled オプションと区別されるよう、 filledregions オプションという名前に変更されています。コンタープロットのコマンドについては古い filled オプションを利用可能です。塗り潰された曲面を得るには plot3d および style=contour を用いてください。
|
|
|
その他
|
|
•
|
新しい plot/computation ヘルプページは、どのように内部的に数値的な演算が行われているかの説明とプロット関連のコマンドから最適なパフォーマンスを得るために必要な提案が記載されています。
|
|
|
このヘルプページで使われているプロット結果をすぐに見るには?
|
|
プロット結果をすぐに確認したいときは、このヘルプページをワークシートとして開いて実行してみてください。
•
|
ヘルプページのツールバーにある以下のアイコンをクリックするとワークシートとして開かれます。
|
|
|