Matlab2Tikz 色條/顏色圖問題

Matlab2Tikz 色條/顏色圖問題

我在使用 Nico Schlömer 的 matlab2tikz 腳本時遇到了一些問題。在 Matlab 中,我建立了一個包含一堆補丁的 3D 圖。一些標量值使用 jet 顏色圖突出顯示(請參閱隨附的 *.png 檔案)。

Matlab圖

然後,我透過呼叫 matlab2tikz('Test6.tex') 將此圖轉換為 tikzpicture。 Matlab列印訊息

> Found colormap/jet to be a pretty good match for your color map (||diff||=0.0280337).

編譯相當大的 tikz 文件

\usetikzlibrary{external} \tikzset{external/system call={lualatex
    \tikzexternalcheckshellescape -halt-on-error
    -interaction=batchmode -jobname "\image" "\texsource"}}
\tikzexternalize[prefix=autofigs/]

\begin{figure}[h]
\input{Bilder/Test6.tex}%
\caption{\label{fig:1}Our figure}
\end{figure}

使用 pdflatex 產生此結果(對應 pdf 的螢幕截圖)

[結果輸出[2]

顏色圖和色條顯然都與原始圖完全不同。誰能幫我解決這個問題?

答案1

我遇到了同樣的問題。我認為 matlab2tikz.m 檔案中的顏色圖生成有錯誤。您必須更改 Test6.tex 檔案中的一些內容:

在你的 tex 檔中應該有以下幾行:

point meta min=...,
point meta max=...,

點上你的價值觀。這限制了顏色圖的顏色。這兩行需要刪除。完成此操作後,應該會產生具有正確顏色值的繪圖,但色條定義仍然錯誤,為了解決此問題,下一個程式碼區塊

colormap={mymap}{[1pt] ...}

需要放在之後

colormap={patchmap}{[1pt] ...}

這將修復色條。但色條的刻度值仍會關閉。可以使用以下方法手動修復此問題:

colorbar style={        
    ytick={...},
    yticklabels={...}
    }

如果不完全清楚,我可以對您的文件進行更改。

相關內容