pgfplots vs datavisualization – 2019 年レビュー

pgfplots vs datavisualization – 2019 年レビュー

ティZ'datavisualizationライブラリとパッケージpgfplots(TiZ) どちらも LaTeX でかなりきれいなグラフを生成します。これから始める人にとって、この 2 つの違いと、どちらが優れているかという点は何でしょうか。


があるこの質問2012年からこれです2014 年からは基本的に同じ質問をしています。

  • 2012 年の回答では、 はdatavisualizationまだ実験段階であるため、 を使用することを推奨していますpgfplots
  • 2014年の回答では、どちらも合理的な選択肢であると述べられています。ここで指摘されている違いは
    • pgfplotsより成熟している
    • datavisualization少し冗長です

では、現状はどうなっているのでしょうか? まず、両方のドキュメントをざっと読んだ後の私の考えを述べます。 誤解している点があれば、詳しく述べて訂正してください。

  • pgfplotsデフォルトではより多くのプロットタイプをサポートしているようです。
  • では、datavisualization新しいプロット タイプを追加するのは非常に簡単なようです。 でも同じことが言えますかpgfplots?
  • datavisualization組み込みのソリューションです。これにより、Tiの他の部分との構文の相互運用性と一貫性が非常に高くなります。Z.
  • どちらも非常に優れたデフォルトが付属しているようです。
  • どちらも、プロットの各要素がどのように視覚化されるかのあらゆる側面を変更できると思います。
  • pgfplotsユーザーベースがはるかに大きいため、より多くのヘルプが得られます。
  • 大量の入力データを処理する能力に違いはありますか?
  • datavisualizationTiに追加されたので pgfplotsすでに存在していたため、著者は設計上の選択のいくつかがpgfplots最適ではないと判断したと推測します。

答え1

この質問に完全に答えることはできませんが、選択肢は 2 つあると思います。

  1. 特定の時点で、これらのパッケージのいずれかを使用して、表面プロットなどの 3D プロットを作成する必要があることは否定できません。
  2. 2 次元のプロットのみを作成したい場合。

最初のケースでは、必然的に に頼らざるを得ませんpgfplots。これは、pgfplotsが 3D 順序付け ( 型z buffer=sortとその仲間のすべてのキーがここで作用します)をサポートしているためですdatavisalization。これは現在サポートされていません。ほとんどのユーザーは、ユニバーサル スタイルを好みます。たとえば、すべてのプロットで矢印の先を同じにしたい場合があります。これは、すべてを同じパッケージ (この場合は pgfplots) で実行する場合、間違いなく最も簡単です。

2 番目のケースでは、状況はそれほど明確ではありません。pgfplotsは非常に強力ですが、やや複雑でもあります。たとえば、\foreachループには特別な注意が必要です。これは習得できないものではありませんが、非常に明確なスコープがある場合は、最終的には を使用する方がよい場合がありますdatavisualization。(個人的には、これらの落とし穴に対処する方法を学ぶことをお勧めします。私の知る限り、これらはすべてマニュアルに記載されています。)

全体的に、新規ユーザーの場合はほとんどの場合、 の方が良いと思います。これは、利用できる例がはるかに多いためです。たとえば、このサイトには のpgfplotsタグが付けられた投稿が の約 100 倍あります。確かに、重複しているものもありますが、それでも例ははるかに多くあります。pgfplotsdatavisualization

言うまでもなく、、tikz-3dplotpstricksなどの代替手段もありますasymptote。はtikz-3dplot、スケッチを描くための非常に強力なツールであり、asymptote本物の 3D エンジンと、十分に評価されていないこともある多くの機能を備えています。

関連情報