为低于某个参数的数值分配不同的颜色?

为低于某个参数的数值分配不同的颜色?

我对 Latex 还比较陌生,因此如果出现任何愚蠢的情况,请谅解。

我正在尝试将 Matlab 向量读入乳胶表中,其值介于 0 到 1 之间。对于小于 0.1 的值,我希望它们以蓝色返回,但似乎无法做到。

这是我一直在使用的代码(粗体和斜体表示 Latex 代码,其他所有内容均与 Matlab 相关)

字符串cat(' & \color{蓝色}\ensuremath{<0.1}{\numprint{',sprintf(格式3,M4_tot(i)),'}} \ ' )];

返回的值是诸如“<0.1 0.837”之类的值,其中 <0.1 是我希望识别的数学运算符,而 0.837 仅仅是我的 Matlab 向量的一个示例。本质上,我不知道如何让 Matrix 识别我的运算符,它所做的只是打印数据。有人能帮忙吗?

答案1

此 MATLAB 脚本将 LaTeX 表的一行写入一个向量:

a = rand(1, 10); 
threshold = 0.1;

fid = fopen('table.tex', 'w');

for i = 1:length(a)
  if(a(i) < threshold) 
    pstr = ['{\\color{blue} ' num2str(a(i)) '}']; 
  else
    pstr = num2str(a(i)); 
  end

  fprintf(fid, pstr);
  if(i ~= length(a))
    fprintf(fid, ' & ');
  end
end 

fclose(fid);

然后,您可以按如下方式将生成的文件包含在表格环境中:

\documentclass{article}
\usepackage{xcolor}
\begin{document}
\begin{tabular}{c|c|c|c|c|c|c|c|c|c|c|c}
    \input{table.tex}
\end{tabular}
\end{document}

相关内容