(PDF ファイル: faq-ja-20240902.pdf) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ gnuplot FAQ この文書は、gnuplot バージョン 6 についての記述です。 FAQ バージョン: 2023 12 月 現文書の PDF 版: http://www.gnuplot.info/faq/faq.pdf (訳注: 英語版)。 目次 ・ 0 メタな質問 □ 0.1 このドキュメントはどこで手に入れられますか □ 0.2 このドキュメントに関するコメントはどこに送れば良いですか ・ 1 一般的な質問 □ 1.1 gnuplot とは何ですか □ 1.2 それはどこから来て、そしてなぜ gnuplot と呼ばれているのですか □ 1.3 gnuplot は何を提供してくれますか □ 1.4 gnuplot はスクリプトに適していますか □ 1.5 gnuplot は私のコンピュータで動かすことができますか □ 1.6 ライセンスについて □ 1.7 gnuplot は FSF や GNU プロジェクトと何か関係があるのですか □ 1.8 更なる情報はどこで手に入りますか ・ 2 インストール □ 2.1 gnuplot の最新バージョンは □ 2.2 gnuplot はどこで手に入れられますか □ 2.3 なぜ開発版を気にしなければいけませんか □ 2.4 gnuplot の最新の開発版はどこで手に入れられますか □ 2.5 gnuplot は私のシステムではどうコンパイルすれば良いですか □ 2.6 ドキュメントはどこですか、それはどうすれば手に入れられますか □ 2.7 動作するサンプル □ 2.8 私の gnuplot にどのオプションがコンパイルされているかを知るには ・ 3 動作 □ 3.1 ヘルプはどうすれば手に入れられますか □ 3.2 どうすればグラフをプリントアウトできますか □ 3.3 どうすればグラフを私のワープロソフトに取り込めますか □ 3.4 どうすれば gnuplot のグラフを編集や後処理できますか □ 3.5 どうすれば現在の設定を保存/再利用できますか □ 3.6 一つのファイルに gnuplot のコマンドとデータの両方を書けますか □ 3.7 どうすれば描画前にデータにフィルタをかけられますか □ 3.8 私のプログラムで gnuplot のルーチンを利用できますか ・ 4 グラフの見た目のカスタマイズ □ 4.1 色や線や点記号のデフォルト属性を調べたり変更するには □ 4.2 陰線処理、隠面処理 □ 4.3 グラフの境界をページの特定の位置に丁度合わせるには □ 4.4 複数のグラフをひとつのページ内で隣同士に配置するには □ 4.5 縦と横の軸の目盛りを 1:1 にできますか □ 4.6 カラーとモノクロの両方の出力で機能するようなパレットは □ 4.7 どうしたらデータ点をスキップできますか □ 4.8 どうしたら n 点毎にデータを扱えますか □ 4.9 どうしたら鉛直線を書けますか ・ 5 Y 軸のラベルの位置が悪い、あるい左の開きが大きすぎ ・ 6 良く質問されるグラフの形式 □ 6.1 アニメーション □ 6.2 陰関数のグラフ □ 6.3 2 つの関数の間の領域を塗りつぶすには □ 6.4 3 次元データの 2 次元射影を描画するには □ 6.5 pm3d 色地図/曲面上に dots/points の散布図を重ねるには □ 6.6 ラベルつきの等高線を描画するには □ 6.7 gnuplot は棒グラフ/ヒストグラム/箱型グラフが書けますか □ 6.8 gnuplot は円グラフが書けますか、四半期グラフはどうですか □ 6.9 gnuplot は一つのグラフで複数の y 軸を使えますか □ 6.10 小 3 角面で構成される物体を描画するには □ 6.11 どうしたら 2 つの関数を重ならないように書けますか □ 6.12 どうしたら splot で格子でない曲線を書けますか □ 6.13 どうしたら x-y 平面上で他の関数に制限されている f(x,y) のグラフを 書けますか ・ 7 文字列の整形と特別な記号 □ 7.1 "enhanced text" モードによる文字列のマークアップ □ 7.2 文字列のマークアップをオンに/オフにするには □ 7.3 特殊文字に関するすべて問題の回答は UTF-8 にすることですか □ 7.4 Planck 定数 (h に横線) が必要なときはどうしたらいいですか □ 7.5 太陽質量記号 (丸に点) が必要なときはどうしたらいいですか □ 7.6 ギリシャ文字や他の特別な記号を使うには □ 7.7 どうしたらアクセント付きの文字を出力できますか □ 7.8 異なるサイズのテキストを一つのグラフで出力できますか ・ 8 その他 □ 8.1 gnuplot には画像形式 XXX をサポートするドライバはありますか □ 8.2 バグを見つけたのですがどうしたら良いですか □ 8.3 "heavy-duty" データを gnuplot で使えますか、または gnuplot に代わる ものはないですか □ 8.4 gnuplot が持たない特殊関数が必要な場合は □ 8.5 私の対話型ターミナルでホットキーを使うには □ 8.6 gnuplot の次期バージョンの開発について知りたいのですがどうしたらい いですか ・ 9 共通の問題 □ 9.1 助けて! 私のフォントが使えない □ 9.2 qt 出力形式のセッションでの最初のグラフが失敗したり変なレイアウトに なります □ 9.3 pm3d によるデータファイルの splot で何も表示されません □ 9.4 なぜ gnuplot はとても小さい数字のデータを無視するのですか □ 9.5 multiplot のグラフを replot や resize すると一かけらしか出ません □ 9.6 書いた式 (1/3 など) が意味のない結果を出力してしまいます □ 9.7 私の出力が不完全です □ 9.8 パイプやスクリプトから gnuplot を呼び出すとスクリーンにグラフがでま せん ・ 10 帰属 0 メタな質問 0.1 このドキュメントはどこで手に入れられますか このドキュメントの最新版は、Web 上の http://www.gnuplot.info/faq/ にあります。 0.2 このドキュメントに関するコメントはどこに送れば良いですか コメント、提案等は開発者向けメーリングリスト gnuplot-beta@lists.sourceforge.net に送ってください。 1 一般的な質問 1.1 gnuplot とは何ですか gnuplot はコマンド駆動型の描画プログラムです。関数の描画、およびデータ点の描画 を、2 次元、3 次元の両方で、そして多くの異なるスタイル、多くの異なる出力形式で 行うことができます。また、gnuplot は自動的にグラフを生成するスクリプト言語とし ても使用することができます。これは主に科学的なデータを画面表示するものとして設 計されています。 gnuplot の著作権は保護されていますが、自由に配布でき、代金を払 う必要はありません。ソースコードのダウンロードも歓迎します。 1.2 それはどこから来て、そしてなぜ gnuplot と呼ばれているのですか gnuplot の作者は Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John Campbell, Gershon Elber, Alexander Woo、そして多くの協力者です。 以下は Thomas Williams によります: 私は微分方程式の講義を、そして Colin は電磁気学の講義を取っていて、 2 人と もそれらに関する数学が視覚化できればなあと考えていました。私達はある EE (Engineering Electronics) VLSI 研のシステム管理者として働いていて、そして、 グラフィック端末とコーディングを行なう時間がありました。その投稿は我々の期 待以上に良く受け入れられ、そして、不完全でしたが、ファイルデータに関するい くつかのサポートに我々を駆り立てました。 GNUplot という紹介はどんなものも正しくはありません。このプログラムの本当の 名前は "gnuplot" です。ずいぶんと "Gnuplot" と書かれているのを見るでしょう が、それは我々の大半が、固有名詞やタイトルであっても、文章を小文字で開始す ることに嫌悪を持っているからです。 gnuplot は GNU プロジェクトや FSF とは、 極わずかの意味を除けば少しも関係ありません。我々のソフトウェアは完全に独立 にデザインされたもので、そして "gnuplot" という名前は実は妥協によるものです 。私は "llamaplot" と呼びたかったし、 Colin は "nplot" と呼びたかったのです 。そして、我々は "newplot" がいいだろうということで合意しましたが、しかしそ のときその名前を持つ、絶対的におぞましい Pascal のプログラムを計算機科学部 でたまに使っていることを知りました。それで私は "gnuplot" がいいごろ合わせに なるとして、後で Colin もそれに同意したのです。 1.3 gnuplot は何を提供してくれますか ・ 2 次元での関数やデータの、点、折れ線、誤差表示、塗り潰した図形、ラベル文字 列、ベクトルなどの沢山の異なる要素を組み合わせた描画 ・ 極座標軸、対数軸、より一般の非線形軸の割り当てや媒介変数座標 ・ 温度分布、ビースウォームグラフ、バイオリングラフ、ヒストグラムなどのデータ 表現 ・ 3 次元でのデータの、点、折れ線、曲面の、たくさんのスタイル (等高線描画、網 かけ) による描画 ・ 整数、実数、複素数での代数演算 ・ Marquardt-Levenberg 最適法を用いたデータ駆動型の曲線回帰 ・ 多くのオペレーティングシステム、多くのグラフィックファイル形式出力、そして 多くの出力装置のサポート ・ 広範囲にわたるオンラインヘルプ ・ ラベル、タイトル、軸、データ点への TEX ライクな書式による見出し付け ・ 対話型入力形式のエディット機能とヒストリ (履歴) 機能のサポート 1.4 gnuplot はスクリプトに適していますか ええ。gnuplot は対話型実行中に追加コマンドを含むファイルを読み込むことができま すし、既に存在するファイルや標準入力からのコマンド列をパイプを使ってバッチモー ドでそれを処理することもできます。 gnuplot は、Octave のような高水準な数学パッ ケージの背後で実行するグラフィックドライバとして使われていますし、 cgi スクリプ トでラップすることで容易に Web 起動型の描画生成ツールとして使うこともできます。 gnuplot は、なじみのある命令 if else continue break while for を用いた文脈駆動 型、データ駆動型の処理制御、および繰り返しをサポートしています。 1.5 gnuplot は私のコンピュータで動かすことができますか gnuplot は、MS Windows, linux, unix, macOS などの多くのプラットホーム上で、広く 利用できます。現在のソースコードは、VMS, Ultrix, OS/2, MS-DOS などの古いシステ ムのサポートも保持していますが、 16 ビットプラットホームはもうサポートしていま せん。 gnuplot のソースは、それなりに標準的 (ANSI/ISO C, POSIX 等) な環境から多少外れ たものの上でもコンパイルできるでしょう。 1.6 ライセンスについて gnuplot はボランティアの集団によって作られたものです。彼らは gnuplot 、およびそ の使用の許可、不許可に関する法的な文書を作成できません。また何の保証もありませ ん。自分自身の責任で使用してください。 gnuplot は、無償であると言う意味でフリーウェアです。 gnuplot をあなたが望むよう に使用し、改変することができますが、改変したものを配布することについてはある種 の制限がつきます。 Copyright というファイルの modification (改変) と redistribution (再配布) の項目を読んでそれに従ってください。ソースファイルのう ち、個別に、明らかに二重ライセンスのものがいくつかあります。その場合、その特定 のファイルに含まれるコードの再配布に関する代わりの条項は、そのファイルの先頭に 挙げられています。 1.7 gnuplot は FSF や GNU プロジェクトと何か関係があるのですか gnuplot は FSF が作ったのでも FSF がメンテナンスしているのでもありません。一時 期 FSF から配布されていたこともありますが、しかし現在はこれは正しくありません。 gnuplot は、GNU General Public License (GPL) に全く保護されていません。 1.8 更なる情報はどこで手に入りますか gnuplot Web ページ http://www.gnuplot.info を見てください。 英語以外の他の言語での文書や入門書もあります。最新のリストについては、 http:// gnuplot.sourceforge.net/help.html の "Localized learning pages about gnuplot" の節をご覧ください。 2 インストール 2.1 gnuplot の最新バージョンは gnuplot の最新の安定版は、2023 年 12 月に最初にリリースされた 6.0 です。更新バ ージョン (パッチレベル 1, 2, ...) は、だいたい 6 ヶ月毎にリリースされます。現在 の開発版は gnuplot 6.1 です。 2.2 gnuplot はどこで手に入れられますか 初めに最も適切な場所は http://www.gnuplot.info です。ここから、例えば SourceForge 上の開発プロジェクトサイト http://sourceforge.net/projects/gnuplot などの、色々なサイトの場所を見つけられるでしょう。 ソース配布物 ("gnuplot-6.0.0.tar.gz" または同様の名前) は公式の配布サイト http: //sourceforge.net/projects/gnuplot にあります。 2.3 なぜ開発版を気にしなければいけませんか 一般的に、現在の開発版は、最終安定リリース版の gnuplot にはまだ入っていない機能 も入っています。 2.4 gnuplot の最新の開発版はどこで手に入れられますか gnuplot の開発版は、git リポジトリに保持されていて、以下に示すようにクローンを 手元で作成し、ソースを調べたり、実行プログラムをソースから作成したりできます。 git clone https://git.code.sf.net/p/gnuplot/gnuplot-main gnuplot 開発版に対する質問は必ず gnuplot-beta@lists.sourceforge.net に送ってください。 2.5 gnuplot は私のシステムではどうコンパイルすれば良いですか リリースノートと README, INSTALL のファイルを読んでください。C と C++ コンパイ ラが必要で、様々なサポートライブラリがあらかじめインストールされている必要もあ りますが、それはどのような設定オプションを選択するかによりますし、作成する実行 ファイルにどの出力形式をサポートさせたいかにもよります。 ・ linux 上でリリース版からコンパイルするには、./configure (一人の一般ユーザ用 にインストールする場合は、 ./configure --prefix=$HOME/usr) とし、次に make として、最後に make install です。 configure スクリプトの出力には十分注意を 払ってください (そう、それはとても長いのだけれど)。そこには、どのサポートラ イブラリが必要なのか、どの追加オプションが望ましいのか、といったことに対す るヒントが現れています。一般には、各サポートライブラリの「開発版」パッケー ジをインストールしておく必要があるでしょう。 ・ linux 上で開発版ソースからコンパイルするには、 ./configure を実行させる前に 、別のスクリプト ./prepare を実行する必要があります。 ・ Windows では、makefile は config/mingw, config/msvc, config/watcom, config/ cygwin 内にあります。 makefile の先頭に書かれているオプションを修正し、その makefile が置かれているのと同じディレクトリ内で適当な make ツールを実行して ください。追加説明も、makefile に書かれています。 ・ 他のプラットフォームでは、適切な makefile (例えば OS/2 なら makefile.os2) を config/ ディレクトリから src/ にコピーして、 makefile のヘッダにあるオプ ションを必要なら更新して、 src にディレクトリを移動して、 make を実行してく ださい。 2.6 ドキュメントはどこですか、それはどうすれば手に入れられますか ソース配布物に完全なドキュメントが PDF ファイル形式で含まれています。個々のセク ションは、gnuplot の作業中に help キーワードを打つことで見ることができます。ド キュメントの他の形式も、docs サブディレクトリ内でソースからコンパイルできます。 http://gnuplot.sourceforge.net/documentation.html に、英語版と日本語版のコピー が置いてあります。 2.7 動作するサンプル ソース配布物には動作するサンプルのディレクトリが含まれています。これらのサンプ ルの多く、およびその結果の描画グラフは http://gnuplot.sourceforge.net/demo/ で も見ることができます。 2.8 私の gnuplot にどのオプションがコンパイルされているかを知るには コンパイル済みの gnuplot が与えられている場合、show コマンドで、それがコンパイ ルされたときに使用されたコンフィグレーションとビルドオプションの一覧を表示でき ます。あなたの gnuplot に組み込まれている出力形式 ("terminal" とも言います) は 、 set terminal で表示できます。 gnuplot> show version long gnuplot> set terminal 3 動作 3.1 ヘルプはどうすれば手に入れられますか 最初のプロンプトで help コマンドを実行してください。その後キーワードをたどって いってください。 help plot や help set から始めるのがいいでしょう。 ・ もし、持っているならマニュアルを読んでください ・ demo サブディレクトリのデモを実行するか、ネット上にあるそのコピーを見てくだ さい。ヒントを与えてくれるでしょう。 http://gnuplot.info/demo ・ システム管理者、または gnuplot を設定した同僚に尋ねてください。 ・ gnuplot に関する質問を議論する Usenet グループ comp.graphics.apps.gnuplot が古くからありますが、そこの住民はほとんど前世紀の人々です。 ・ より活発なヘルプフォーラムが StackOverflow にあります。 http:// stackoverflow.com/questions/tagged/gnuplot ・ それらにすべて失敗した場合、メーリングリスト gnuplot-info@lists.sourceforge.net にメールを送ってください。そのメーリング リストが別に受けてしまう大量の spam を削減するため、投稿の前にそのメーリン グリストに参加 (subscribe) しなければいけないことに注意してください。参加の 方法は、 http://lists.sourceforge.net/lists/listinfo/gnuplot-info にありま す。 質問をする際は、あなたが使用している gnuplot のバージョンとオペレーティングシス テムについても言及する必要があります。あなたのやり方で期待したようにはうまくで きなかったグラフについて質問したいときは、その問題を持つグラフを生成するような 最小の gnuplot コマンド列を示すようにしてください。 3.2 どうすればグラフをプリントアウトできますか plot コマンドが生成するものの出力形式は、その前の set terminal によって決定しま す。対話型でない出力に対しては、ファイル名を指定するためにこれと set output コ マンドを組にして実行します。 以下の例の作業は、まず sin(x) のグラフをスクリーン上に描画し、同じグラフを PDF 出力ファイルとして再描画します。注意: PDF 出力は、スクリーン上に表示されるグラ フと完全には同じにならない可能性があります。 gnuplot> plot sin(x) gnuplot> set terminal pdf Terminal type is now 'pdfcairo' Options are ' transparent enhanced fontscale 0.5 size 5.00in, 3.00in ' gnuplot> set output "sin.pdf" gnuplot> replot gnuplot> unset output # 出力ファイルを閉じる (でないと開いたまま) gnuplot> unset terminal # デフォルト対話型出力形式に戻す gnuplot> 出発点が、デフォルト対話型出力形式でない場合は、同じことを push と pop で達成で きます。 gnuplot> set terminal push # 現在の出力形式を保存 (デフォルでなくてもよい) gnuplot> set terminal pdf gnuplot> set out 'a.pdf' gnuplot> replot gnuplot> unset out gnuplot> set term pop # 保存した出力形式を復帰 対話型出力形式の中にはそのツールバー上にプリンタアイコンを提供するものもありま す (win, wxt, qt 等)。それは、他の出力形式を使用するのではなく、システムに用意 されている一般的なシステムツールを使い、現在のグラフを印刷するか、またはファイ ルに保存します。すなわち、印刷メニューで "save to png" を選択して得られるファイ ルは、 set term png; replot; によって得られるファイルとは違うものになります。一 般に、この方法で保存したグラフは、コマンドラインから出力形式を変更して作成した ものよりも、よりスクリーン画像に近いものを生成するでしょう。 3.3 どうすればグラフを私のワープロソフトに取り込めますか 基本的に、グラフをそのワープロソフトが理解できる形式のファイルに保存すれば、そ のワープロソフトで読み込むことができるでしょう。後で正しいサイズに変換もできる という点で、ベクトル形式のフォーマット (PostScript, emf, svg, pdf, TEX, L^ATEX) の方がいいでしょう。 使用できるファイル形式の一覧を見るには set term としてください。 多くのワープロソフトは Encapsulated PostScript (*.eps) のグラフを取り込めます。 gnuplot では、 set terminal postscript eps または set terminal epscairo を使うことで eps 出力 を選択できます。 gnuplot は、出力する EPS ファイルにプレビュー用のビットマップ 画像を埋め込みませんので、ワープロソフトに対応させるために、そのファイルをワー プロソフトに取り込む前に、外部ツールを使って自分自身でプレビュー画像を追加しな いといけない場合もあるかもしれません。 LibreOffice や Microsoft Office 等のアプリケーションには、 EMF 形式のベクトル画 像を処理できるものがあります。そのような画像ファイルは emf 出力形式でも作れます し、 windows 出力形式の描画ウィンドウのツールバーから 'Save as EMF...' を選択す ることでも作れます。 LibreOffice は SVG 形式も、AutoCAD の dxf 形式も読みこむことができます。 gnuplot を使って TEX や L^ATEX 文書に取り込むためのグラフを作る方法は何通りもあ ります。取り込む *.tex ファイルの断片を直接生成する出力形式もありますし、 \ includegraphics コマンドを使って取り込むための *.eps, *.pdf, *.png 出力を生成す るものもあります。 epslatex と cairolatex 出力形式は、画像ファイル (*.eps か *.pdf) とそれを参照する *.tex 文書ファイルの両方を生成します。 tikz 出力形式は 、テキストとグラフを生成し、その出力を pdflatex で処理すれば PDF ファイルが作成 できます。 大抵のワープロソフトはビットマップ画像 (png, pbm 等) を取り込むことができますが 、この方法の短所は、そのグラフが gnuplot によって生成されたときのサイズによって その解像度が制限されてしまうことです。一般に、文書が最終的にプリントアウトされ る解像度よりもその解像度はかなり低くなります。 3.4 どうすれば gnuplot のグラフを編集や後処理できますか これはあなたが使う出力形式に依存します。 ・ svg 出力形式 (scalable vector graphics) の出力は Inkscape (http:// www.inkscape.org), Skencil (http://www.skencil.org), Dia (http:// projects.gnome.org/dia/), のような svg エディタで更なる編集も行なえますし、 OpenOffice.org (OO.o Draw プリミティブへの変換によって) の中に取り込むこと もできます。 ・ PostScript や PDF 出力は、Adobe Illustrator や Acrobat のようなツールで直接 編集できますし、 pstoedit パッケージで他の色々な編集可能なベクトル形式に変 換することも可能です。 pstoedit は http://www.pstoedit.net にあります。 ・ DXF 出力形式は AutoCAD の書式で、他のいくつかのアプリケーションでも編集でき ます。 ・ ビットマップ形式の画像 (png, jpeg, pbm 等) は ImageMagick や Gimp の様なツ ールで編集することができます。一般に、ベクトルグラフィック形式の後処理を行 なうにはベクトルグラフィックプログラム (ドロー系ツール) を、ピクセル画像に はピクセル画像系のプログラム (ペイント系ツール) を使う必要があります。 3.5 どうすれば現在の設定を保存/再利用できますか それには save "filename" と load "filename" のコマンドを使ってください。 3.6 一つのファイルに gnuplot のコマンドとデータの両方を書けますか gnuplot のバージョン 5 以降では、「ヒアドキュメント」形式での名前付きデータブロ ックをサポートしています: gnuplot> $DATABLOCK << EOD cats 4 2 dogs 1 4 EOD gnuplot> plot $DATABLOCK using 2:3:1 with labels 名前付きデータブロックは一度定義すれば、それを何度でも使うことができます。 データは、plot コマンド上で疑似ファイル指定 plot "-" を行ってインライン形式で与 えることもできます。この場合は、データは一度しか使えません。 gnuplot> plot "-" 1 1 2 4 3 9 e 3.7 どうすれば描画前にデータにフィルタをかけられますか あなたの使用する OS が popen() 関数をサポートしているなら、他のプログラムやシス テムユーティリティを plot コマンドの一部分として使用して入力データをフィルタリ ングすることができます。 gnuplot> plot "< sort +2 file.in" # 2 列目のデータで事前にソート この仕組みは、Unix 由来のコマンドラインツール awk, sort, grep などと組み合わせ て使用するととても強力です。 3.8 私のプログラムで gnuplot のルーチンを利用できますか パイプをサポートしているシステムでは、他のプログラムからパイプ経由で gnuplot に コマンドを渡すことができます。 Octave (http://www.octave.org) のように、 gnuplot をグラフィックエンジンとして使用している多くのアプリケーションがこの方 法を使用しています。これは、form ベースの Web ページから gnuplot を起動する cgi スクリプトでも利用できます。 4 グラフの見た目のカスタマイズ 4.1 色や線や点記号のデフォルト属性を調べたり変更するには 複数の要素に対する plot や splot コマンドを実行した場合、 gnuplot は、デフォル トでは色と線種の集合を巡回的に使用します。これは、その plot コマンドに特定の色 や線種属性を指定することで変更できますし、デフォルトの列を変更することもできま す。以下のコマンドは、それぞれ追加パラメータをたくさん指定できます。 ・ test は、現在の出力形式に対する有効な色、線、点の属性などを表示します。 ・ set color と set monochrome は、定義済みの列を選択します。 ・ set linetype は、存在する線種の属性を変更するか、新しいものを追加します。 ・ set palette は、温度地図のような pm3d モードで使用されるカラーパレットを変 更します。 ・ set pointsize は、追加の倍率としてすべての点のサイズをスケールします。 4.2 陰線処理、隠面処理 2 つの関連するコマンドがあります。 set hidden3d は、3 次元描画スタイル splot ... with lines で描画する曲面に影響を与えます。それは、他の 3 次元描画スタイル で生成され、それらの曲面で隠される線分をクリッピングします。しかし、pm3d モード で生成されるグラフは処理しません。 with pm3d, with zerror, with boxes のスタイ ル、および set pm3d が有効な最中に描かれた様々な描画要素についても同様です。こ れらのグラフに対する隠面処理は、見る側からの距離の順番でそれらを描画することに よって代用的に達成されていますが、その順番は、コマンド set pm3d depthorder で制 御できます。 4.3 グラフの境界をページの特定の位置に丁度合わせるには 上、下、左、右の境界位置を、ページ内の位置として比率で指定してください: set lmargin at screen 0.05 set bmargin at screen 0.05 set rmargin at screen 0.95 set tmargin at screen 0.95 4.4 複数のグラフをひとつのページ内で隣同士に配置するには あなたが必要とするコマンドは set multiplot です。 gnuplot は指定した数のグラフ を規則的な升目状に配置します (set mulplot layout , ...)。または 、それらを set origin と set size を使ってひとつずつ位置を決めることもできます 。 4.5 縦と横の軸の目盛りを 1:1 にできますか set size square か set view equal xy としてみてください。バージョン 6 では、set isotropic というコマンドもあります。 4.6 カラーとモノクロの両方の出力で機能するようなパレットは set palette cubehelix を試してください。 4.7 どうしたらデータ点をスキップできますか 以下のようにデータ値として ? を指定すればできます。 1 2 2 3 3 ? 4 5 set missing も参照してください。データファイルのコメント文字を指定するには、 set datafile commentschars を参照してください。 4.8 どうしたら n 点毎にデータを扱えますか これは、例えば plot 'a.dat' every 2 のように、 plot コマンドに色々なオプション を指定することでできます。すべての点を通る線を引き、しかし点の記号は n 点毎に書 きたい場合は、 plot 'a.dat' with linespoints pointinterval n としてみてください。 4.9 どうしたら鉛直線を書けますか 状況によりますが、主な方法は以下の通りです: ・ set arrow .... .... nohead この場合、矢の正確な開始点と終了点の位置を計算し ておく必要があります。 ・ データ点を作って (インラインでの指定も可) それを描画 5 Y 軸のラベルの位置が悪い、あるい左の開きが大きすぎ gnuplot は、Y 軸ラベルを水平に出力する場合 (set ylabel norotate)、それを書くの に、グラフの左にどれくらいのスペースが必要かを評価する方法に問題を抱えていまし た。これは、そのラベル文字列が TeX のマークアップを含んでいる場合は特にそうでし た。この問題の回避策として、ylabel ではなく、番号付きラベルで文字列を置くことが できます。 Y = 1001 set label Y '$\operatorname{\mathfrak{Im}} S_{21}$' set label Y norotate at graph 0.0, 0.5 offset -6 6 良く質問されるグラフの形式 6.1 アニメーション gnuplot バージョン 5.4 までは、直接アニメーションファイルを出力できる出力形式は 一つだけ (gif) でした: set terminal gif animate {delay