單雙對數軸

單雙對數軸

我正在嘗試製作一個具有雙對數 y 軸的圖。這可能嗎?這應該改變每個對數增量的距離,因為我想繪製所謂的誤碼率。為了獲得測量資料的直線,需要這種類型的縮放(y = log(log(x))。眾所周知,在正常對數圖中,每個增量之間的距離是相同的...不幸的是我無法在 pgfplots-manual 中找到解決方案,給出的唯一選項是一個或兩個軸的單一日誌。

答案1

正如 Christian Feuersänger 所說,您可以使用 ay coord trafo動態轉換座標。刻度標籤通常會使用 重新轉換y coord inv trafo,但數學引擎的精確度對此不夠高(1000 變成 997.8),因此您必須明確提供標籤:

\documentclass{article}
\usepackage{pgfplots}
\begin{document}


\begin{tikzpicture}
\begin{axis}[
    y coord trafo/.code=\pgfmathparse{log10(log10(#1))},
    domain=0:2,
    ymax=10000,
    ytick={10,100,1000,10000},
    yticklabels={10,100,1000,10000},
    extra y ticks={2,...,9,20,30,...,90,200,300,...,900,2000,3000,...,9000},
    extra y tick labels={},
    every extra y tick/.style={major tick length=3pt}
]
\addplot {exp(exp(x))};
\end{axis}
\end{tikzpicture}
\end{document}

相關內容