pgfplots 與資料視覺化 – 2019 年回顧

pgfplots 與資料視覺化 – 2019 年回顧

kZ'datavisualization庫和套件pgfplots(基於TikZ) 都可以在 LaTeX 中產生非常漂亮的圖。對於開始這樣做的人來說,兩者之間有什麼區別以及什麼可能使其中一個優於另一個?


這個問題從 2012 年起以及這個從2014年開始基本上問同樣的問題。

  • 在 2012 年的版本中,答案是datavisualization仍處於實驗階段,因此建議使用pgfplots.
  • 2014 年的答案指出,兩者都是合理的選擇。這裡指出的差異是
    • pgfplots更成熟了
    • datavisualization有點詳細

那麼,目前的情況如何呢?首先,在瀏覽完這兩份文件後,以下是我的想法。請擴展它們並糾正我,我得到了錯誤的印象。

  • pgfplots似乎預設支援更多繪圖類型。
  • datavisualization新增的繪圖類型似乎很容易。對 來說也是如此嗎pgfplots
  • datavisualization是一個內建的解決方案。這保證了與 Ti 的其餘部分在語法上具有非常高程度的互通性和一致性kZ。
  • 兩者似乎都有非常好的預設值。
  • 我認為兩者都允許改變繪圖中每個元素的可視化方式的各個方面。
  • pgfplots擁有更大的用戶群,這意味著這裡有更多的幫助。
  • 處理大量輸入資料的能力是否有差異?
  • 自從datavisualization添加到Ti中kZ pgfplots已經存在,我認為作者認為某些設計選擇pgfplots並不理想。

答案1

我無法完全回答這個問題,但我想說有兩個選擇。

  1. 您不能排除在給定點您想要使用這些軟體包中的任何一個來產生 3D 圖(例如曲面圖)的情況。
  2. 您只想產生二維圖。

在第一種情況下,您將不可避免地必須依賴pgfplots.這是因為pgfplots支援 3d 排序(類型和朋友的所有鍵都在z buffer=sort這裡發揮作用),而datavisalization目前尚不支援。大多數使用者喜歡通用的樣式。例如,您可能希望所有繪圖的箭頭看起來都相同,等等。如果您使用同一個套件(在本例中為 pgfplots)執行所有操作,這可以說是最簡單的。

在第二種情況下,情況則不太清楚。pgfplots極為強大,但也有些複雜。例如,\foreach循環需要特別注意。這並不是學不到的,但如果你有一個非常清晰的範圍,你最終可能會做得更好datavisualization。 (我個人建議學習處理這些陷阱,據我所知,它們都記錄在手冊中。)

總的來說,我認為新用戶在大多數情況下會更好地使用pgfplots,也是因為有更多可用的範例。例如,pgfplots該網站上標記的帖子比datavisualization.誠然,其中一些是重複的,但儘管如此,還有更多的例子。

不用說,還有諸如tikz-3dplotpstricks和 之類的替代方案asymptotetikz-3dplot是一個非常強大的草圖繪製工具,asymptote擁有真正的 3D 引擎和許多有時沒有得到足夠重視的功能。

相關內容