![pgfplots 與資料視覺化 – 2019 年回顧](https://rvso.com/image/399846/pgfplots%20%E8%88%87%E8%B3%87%E6%96%99%E8%A6%96%E8%A6%BA%E5%8C%96%20%E2%80%93%202019%20%E5%B9%B4%E5%9B%9E%E9%A1%A7.png)
鈦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
我無法完全回答這個問題,但我想說有兩個選擇。
- 您不能排除在給定點您想要使用這些軟體包中的任何一個來產生 3D 圖(例如曲面圖)的情況。
- 您只想產生二維圖。
在第一種情況下,您將不可避免地必須依賴pgfplots
.這是因為pgfplots
支援 3d 排序(類型和朋友的所有鍵都在z buffer=sort
這裡發揮作用),而datavisalization
目前尚不支援。大多數使用者喜歡通用的樣式。例如,您可能希望所有繪圖的箭頭看起來都相同,等等。如果您使用同一個套件(在本例中為 pgfplots)執行所有操作,這可以說是最簡單的。
在第二種情況下,情況則不太清楚。pgfplots
極為強大,但也有些複雜。例如,\foreach
循環需要特別注意。這並不是學不到的,但如果你有一個非常清晰的範圍,你最終可能會做得更好datavisualization
。 (我個人建議學習處理這些陷阱,據我所知,它們都記錄在手冊中。)
總的來說,我認為新用戶在大多數情況下會更好地使用pgfplots
,也是因為有更多可用的範例。例如,pgfplots
該網站上標記的帖子比datavisualization
.誠然,其中一些是重複的,但儘管如此,還有更多的例子。
不用說,還有諸如tikz-3dplot
、pstricks
和 之類的替代方案asymptote
。tikz-3dplot
是一個非常強大的草圖繪製工具,asymptote
擁有真正的 3D 引擎和許多有時沒有得到足夠重視的功能。