r markdown、knitr 和 latex 符号
r markdown, knitr and latex symbols
经过数小时的无果搜索,我想在这里寻求建议。
我正在尝试在 r markdown 中使用 knitr 生成一些非常简单的 html 表格,但我无法让乳胶符号在列名称中正确显示。
示例代码,有几个不同的符号:
kable(data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$%$" = "c"),
escape = F)
如您所见,列名称未格式化 X..3.
X..epsilon.2.
X...
如有任何帮助,我们将不胜感激
您可以在 kable
调用中设置 col.names
。它在您的 data.frame
调用中不起作用,因为它不允许不以点或字母开头的列名。
你可以在这里看到这个:
my_data <- data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$%$" = "c")
my_data
X..3. X..epsilon.2. X...
1 a b c
解决方法是:
kable(my_data, escape = F,
col.names = c("$^3$", "$\epsilon^2$", "$%$"))
您可能想使用 \varepsilon
而不是 \epsilon
,因为这给出了一个更漂亮的 epsilon(在我看来)。
kable(my_data, escape = F,
col.names = c("$^3$", "$\varepsilon^2$", "$%$"))
您可以在数据框中使用这些列名,但您需要告诉 data.frame
函数不要使用 check.names = FALSE
来破坏它们。
但是,这不足以修复您的示例,因为 $%$
不是合法的 LaTeX。
您需要转义百分号,否则它将被视为注释字符。
所以这有效:
my_data <- data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$\%$" = "c",
check.names = FALSE)
kable(my_data)
经过数小时的无果搜索,我想在这里寻求建议。
我正在尝试在 r markdown 中使用 knitr 生成一些非常简单的 html 表格,但我无法让乳胶符号在列名称中正确显示。
示例代码,有几个不同的符号:
kable(data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$%$" = "c"),
escape = F)
如您所见,列名称未格式化 X..3.
X..epsilon.2.
X...
如有任何帮助,我们将不胜感激
您可以在 kable
调用中设置 col.names
。它在您的 data.frame
调用中不起作用,因为它不允许不以点或字母开头的列名。
你可以在这里看到这个:
my_data <- data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$%$" = "c")
my_data
X..3. X..epsilon.2. X...
1 a b c
解决方法是:
kable(my_data, escape = F,
col.names = c("$^3$", "$\epsilon^2$", "$%$"))
您可能想使用 \varepsilon
而不是 \epsilon
,因为这给出了一个更漂亮的 epsilon(在我看来)。
kable(my_data, escape = F,
col.names = c("$^3$", "$\varepsilon^2$", "$%$"))
您可以在数据框中使用这些列名,但您需要告诉 data.frame
函数不要使用 check.names = FALSE
来破坏它们。
但是,这不足以修复您的示例,因为 $%$
不是合法的 LaTeX。
您需要转义百分号,否则它将被视为注释字符。
所以这有效:
my_data <- data.frame("$^3$" = "a",
"$\epsilon^2$" = "b",
"$\%$" = "c",
check.names = FALSE)
kable(my_data)