我相信有意义的变量名称。不幸的是,当我在R控制台中查看data.frame时,这通常意味着存在巨大的白色空白:
有没有办法告诉R垂直打印列名,如下所示:
它不需要在控制台中,也许可以用这种方式将表格绘制成PDF格式?
可执行代码,由Ben Bolker提供:
<HTML>
<HEAD>
<TITLE>Dynamically add Textbox, Radio, Button in html Form using JavaScript</TITLE>
<SCRIPT language="javascript">
function add(type,c) {
//Create an input type dynamically.
var element = document.createElement("input");
var value = parseInt(document.getElementById('number').value, 10);
value = isNaN(value) ? 0 : value;
value++;
document.getElementById('number').value = value;
//Assign different attributes to the element.
element.setAttribute("type", type);
element.setAttribute("value", type);
element.setAttribute("name", type);
element.setAttribute("id", type+parseInt(value));
var foo = document.getElementById("fooBar");
//Append the element in page (in span).
foo.appendChild(element);
}
</SCRIPT>
</HEAD>
<BODY>
<FORM>
<H2>Dynamically add element in form.</H2>
Select the element and hit Add to add it in form.
<BR/><input type="hidden" id="number" value="0"/>
<SELECT name="element">
<OPTION value="button">Button</OPTION>
<OPTION value="text">Textbox</OPTION>
<OPTION value="radio">Radio</OPTION>
</SELECT>
<INPUT type="button" value="Add" onclick="add(document.forms[0].element.value,1)"/>
<span id="fooBar"> </span>
</FORM>
</BODY>
</HTML>
答案 0 :(得分:2)
如评论中所述,您可以通过CSS应用轮换:
library(DT)
df <- mtcars
names(df) <- sprintf('<div style="transform:rotate(-90deg);margin-top:30px;">%s</div>', names(df))
dt <- datatable(df, escape = FALSE)
htmlwidgets::saveWidget(dt, tf<-tempfile(fileext = ".html"))
shell.exec(tf)
这在RStudio Viewer中不起作用,但它在浏览器中可以正常工作:
答案 1 :(得分:1)
不使用图形设备。 在普通的旧控制台中运行的更好,更简单的解决方法是: 打印表格的转置,现在列名称变为行名称:
> t(sample.table)
1 2 3 4 5 6 7
a.first.long.variable.name 1 1 1 1 1 1 1
another.long.variable.name 1 1 1 1 1 1 1
this.variable.name.is.even.longer.maybe 1 1 1 1 1 1 1
(要取消默认情况下无用的列名,请包括sample.table <- data.frame(row.names=1:7, ...
)
我一直这样做。热图,树状图,自动命名的回归变量来自扩展分类...