2017-01-09 146 views
1

我有csv文件,每个文件都有多个堆栈图,但输入的csv文件名称相当长。但是,在我的结果图中,csv文件的全名未完整打印在易于混淆的情节类别所指的facet_wrap中。我试图通过使用space,scale参数来调整face_wrap的大小,但输入csv文件的全名仍未显示。任何人都可以指出我如何处理具有相当长的模式,必须显示在结果图中的CSV文件?我怎样才能做到这一点?任何想法 ?如何调整`facet_wrap`多堆栈图的大小?

我有跟相当长的字符(只是玩具例子在这里)命名的CSV文件:

TextTextTextTextTextTextTextTextTextTextTextTextTextText.csv 

这是我造成的情节和所希望的描绘,我想实现(在这里我发现多堆情节只一个csv文件):

enter image description here

我打算继续我的原创情节的部分代码。我怎样才能得到我想要的情节?任何方式来调整face_wrap的大小,其中相当长的命名文件可以显示在结果图中?非常感谢:)

编辑

我想调整为每个csv文件的多个垛积之间的空间为好。如果将两个或三个csv文件的多个图放置在单个页面中,如何动态调整空间和打印大小以确保相当长的名为csv的文件更具可读性。我怎样才能做到这一点?请任何想法吗?

新编辑

Qualified <- list(
    hotankarmaykuchakorla = data.frame(begin=seq(1, by=6, len=20), end=seq(4, by=6, len=20), pos.score=sample(30, 20)), 
    aksukexkerawataltay = data.frame(begin=seq(3, by=9, len=15), end=seq(6, by=9, len=15), pos.score=sample(28, 15)) 
) 

UnQualified <- list(
    hotankarmaykuchakorla = data.frame(begin=seq(9, by=12, len=30), end=seq(14, by=12, len=30), pos.score=sample(35, 30)), 
    aksukexkerawataltay = data.frame(begin=seq(13, by=10, len=20), end=seq(19, by=10, len=20), pos.score=sample(34, 20)) 
) 

得到多个垛积为此:

hotankarmaykuchakorla.validCandidate.Qualified.csv 
hotankarmaykuchakorla.validCandidate.unQualified.csv 
hotankarmaykuchakorla.invalidCandidate.Qualified.csv 
hotankarmaykuchakorla.invalidCandidate.UnQualified.csv 
+2

也许在名称中引入'/ n'换行符,而不是扩展剧情以适应标题? – zx8754

+2

看看这个标题是如何包装在这里的:http://www.cookbook-r.com/Graphs/Titles_(ggplot2)/ –

+1

如果你要将图表写入文件,你可以在创建时增加“宽度”参数装置。为了管理未知的文件名,对字符进行计数并相应插入“\ n”(或增加宽度) –

回答

2

也许使用换行符:

library(ggplot2) 

# dummy data 
df1 <- mtcars[, 1:3] 
# make new long name 
df1$cyl <- paste0("TextTextTextTextTextTextTextTextTextText", df1$cyl, ".csv") 
# add newline 
df1$cylWrap <- 
    paste0(substr(df1$cyl, 1, 20), "\n", 
     substr(df1$cyl, 21, nchar(df1$cyl))) 

# plot 
ggplot(df1, aes(mpg, disp)) + 
    geom_col() + 
    facet_wrap(~cylWrap, scales = "free_x") + 
    theme(text = element_text(size = 14)) 

enter image description here

+1

@你可以使用这个自定义函数:http://stackoverflow.com/a/27734975/680068 – zx8754

+1

你的答案是有帮助的,它帮助我解决了我的问题。谢谢:) – Dan

+1

@丹鼓励[发表自己的问题的答案](http://stackoverflow.com/help/self-answer),请分享。 – zx8754