
我希望根據巨集(或某種替代方案)定義迷你圖的資料系列,而不是在sparkline
環境本身中明確設定它。到目前為止我的嘗試都失敗了。作為 MWE,可以執行以下操作:
\documentclass[12pt]{memoir}
\usepackage{xcolor,tikz,sparklines}
\begin{document}
\xdef\SparkMacro{0 1 0.5 1.5 1 0.25}
\renewcommand{\sparklineheight}{1.75}
\begin{sparkline}{3}
\sparkrectangle 0 1.75
\spark \SparkMacro\ / % doesn't work
% \spark 0 1 0.5 1.5 1 0.25 /% does work
\end{sparkline}
\end{document}
如何將這些資料傳遞到環境sparkline
而無需明確鍵入(或複製和貼上)它們?
答案1
您需要\expandafter
先擴展資料才能\spark
看到它。你還需要一個真正的空間,而不是\
在最後。最簡單的方法是確保巨集以空格結尾。
\documentclass[12pt]{memoir}
\usepackage{xcolor,tikz,sparklines}
\begin{document}
\xdef\SparkMacro{0 1 0.5 1.5 1 0.25 }
\renewcommand{\sparklineheight}{1.75}
\begin{sparkline}{3}
\sparkrectangle 0 1.75
\expandafter\spark \SparkMacro / % doesn't work
%\spark 0 1 0.5 1.5 1 0.25 /% does work
\end{sparkline}
\end{document}
答案2
在是否有一個軟體包可以提供 Ed Tufte 風格的圖形?我為迷你圖創建了一個解決方案,它不是基於迷你圖包,而是基於 pgfplots。
優點是:您可以透過數值表格提供輸入,提供數值表格並根據這些表格上的數學表達式繪製數據,或立即提供數學表達式。
該解決方案具有條形圖、線圖和散點圖的功能,並且還可以自動確定最小/最大座標。