编辑:仅通过了解此设置中 \textwidth 的大小(以点或厘米为单位)即可解决这个问题。
我在将 MATLAB 图形导出到 LaTeX 并保持轴标签的字体大小时遇到了问题。我希望实现正确的导出大小,以便两个并排的图形达到整个文本宽度。(参见轴字体大小太小的图形)
由于我没有在 MATLAB 中导出宽度合适的图形,LaTeX 会缩放图片,轴标签的大小也会发生变化。MATLAB 的导出设置允许我以点或厘米为单位导出图形的精确大小,并以正确的轴标签字体大小导出。
从 MATLAB 导出时应使用什么宽度,以及如何在 LaTeX 中实现代码来实现这一点?
\documentclass[12pt, a4paper]{article}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[font={small,it}]{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}{0.45\textwidth}
\centering
\includegraphics[width = \textwidth]{B1_coarse.png}
\caption{Coarse mesh with \(h_{max} = 1/2\).}
\label{fig:b1_coarse}
\end{subfigure}
~
\begin{subfigure}{0.45\textwidth}
\includegraphics[width = \textwidth]{B1_fine.png}
\caption{Fine mesh with \(h_{max} = 1/32\).}
\label{fig:b1_fine}
\centering
\end{subfigure}
\end{figure}
\end{document}
答案1
首先,\textwidth
通过在代码中输入来找出文档的宽度\the\textwidth
,宽度值将在编译时以点为单位写入。
在 MATLAB 中,创建具有所需字体大小的图形。
在图下方,转到:文件 -> 导出设置
第一步很重要:转到“属性”下的“字体”,然后取消选中“自定义大小:”。
选择“单位:”下的“点”。
在“宽度”下,写入一半的\textwidth
值并选择合适的“高度”。
(提示是使用尺寸下方的工具导出此设置-)
按“应用于图形”然后“导出...”,最好保存为.eps,如果文件太大则保存为.png。
然后使用以下简单代码:
\begin{figure}[H]
\centering
\begin{subfigure}{0.495\textwidth}
\centering
\includegraphics[width=\linewidth]{B1_fine.png}
\caption{Coarse mesh with \(h_{max} = 1/2\).}
\end{subfigure}
\hfill
\begin{subfigure}{0.495\textwidth}
\centering
\includegraphics[width=\linewidth]{B1_fine.png}
\caption{Fine mesh with \(h_{max} = 1/32\).}
\end{subfigure}
\end{figure}