Enc: [r-br] Função para quebra de linha em título

----- Mensagem encaminhada ---- De: Henrique Dallazuanna <wwwhsd@gmail.com> Para: R_STAT@yahoogrupos.com.br Enviadas: Sábado, 25 de Outubro de 2008 20:54:23 Assunto: Re: [R_STAT] Função para quebra de linha em título Marcio, uma alternativa talvez seja: nm <- c("Aaaaaa aaaaaaa aa", "Bbbbbb bbbbbb", "cccc") y <- c(10,4,9) barplot(y, names.arg = nm) strP <- .5 nm[strwidth( nm) > strP] <- gsub("( \\w*$)", "\n\\1", nm[strwidth( nm) > strP]) 2008/10/25 Marcio Nicolau <marcio.nicolau@ gmail.com> Prezados,
A algum tempo, questionei na lista sobre a existência de uma função para quebra de linha automática para títulos de gráficos.
Após a sugestão do Benilton (função gsub), segue abaixo o código... caso necessitem.
## Pre-Processa titulos
pretitulo <- function(orig, cut=55) { nparts = ceiling(nchar( orig) / cut) cuts = c(1,1:nparts * cut) spt = strsplit(orig,"\\s")[[1]] cs = cumsum(nchar( spt))
ids <- matrix(FALSE, nparts,length( nchar(spt) )) for(i in 2:length(cuts) ) { ids[i-1,] <- (cs >= cuts[i-1] & cs < cuts[i]) }
ch <- vector("character", nparts) for(i in 1:nparts) { ch[[i]] <- paste(spt[ids[ i,]],collapse = " ") } pretitulo <- paste(ch,collapse="\n") }
Não é o melhor, computacionalmente falando, mas funciona :)
Abraços
Marcio Nicolau marcio.nicolau@ gmail.com
------------ --------- --------- ------
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse: http://br.groups. yahoo.com/ group/R_STAT/
<*> Para sair deste grupo, envie um e-mail para: R_STAT-unsubscribe@ yahoogrupos. com.br
<*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo. com/info/ utos.html
-- Henrique Dallazuanna Curitiba-Paraná -Brasil 25° 25' 40" S 49° 16' 22" O __._,_.___ Mensagens neste tópico (2) Responder (através da web) | Adicionar um novo tópico Mensagens | Arquivos | Fotos | Links | Banco de dados | Enquetes Alterar configurações via web (Requer Yahoo! ID) Alterar configurações via e-mail: Alterar recebimento para lista diária de mensagens | Alterar formato para o tradicional Visite seu Grupo | Termos de uso do Yahoo! Grupos | Sair do grupo Atividade nos últimos dias * 8 Novos usuáriosVisite seu Grupo Yahoo! Mail Conecte-se ao mundo Proteção anti-spam Muito mais espaço Yahoo! Barra Instale grátis Buscar sites na web Checar seus e-mails . Yahoo! Grupos Crie seu próprio grupo A melhor forma de comunicação . __,_._,___

Estava olhando vossa solução, e quando copiei e colei vi que só os três primeiros comandos funcionam, não vi diferença quando coloca o restante a partir do StrP. . Marcio, uma alternativa talvez seja: nm <- c("Aaaaaa aaaaaaa aa", "Bbbbbb bbbbbb", "cccc") y <- c(10,4,9) barplot(y, names.arg = nm) strP <- .5 nm[strwidth( nm) > strP] <- gsub("( \\w*$)", "\n\\1", nm[strwidth( nm) > strP]) 2008/10/25 Marcio Nicolau <marcio.nicolau@ gmail.com> Prezados, A algum tempo, questionei na lista sobre a existência de uma função para quebra de linha automática para títulos de gráficos. Após a sugestão do Benilton (função gsub), segue abaixo o código... caso necessitem. ## Pre-Processa titulos pretitulo <- function(orig, cut=55) { nparts = ceiling(nchar( orig) / cut) cuts = c(1,1:nparts * cut) spt = strsplit(orig,"\\s")[[1]] cs = cumsum(nchar( spt)) ids <- matrix(FALSE, nparts,length( nchar(spt) )) for(i in 2:length(cuts) ) { ids[i-1,] <- (cs >= cuts[i-1] & cs < cuts[i]) } ch <- vector("character", nparts) for(i in 1:nparts) { ch[[i]] <- paste(spt[ids[ i,]],collapse = " ") } pretitulo <- paste(ch,collapse="\n") } Não é o melhor, computacionalmente falando, mas funciona :) Abraços Marcio Nicolau marcio.nicolau@ gmail.com ------------ --------- --------- ------ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups. yahoo.com/ group/R_STAT/ <*> Para sair deste grupo, envie um e-mail para: R_STAT-unsubscribe@ yahoogrupos. com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo. com/info/ utos.html -- Henrique Dallazuanna Curitiba-Paraná -Brasil 25° 25' 40" S 49° 16' 22" O __._,_.___ Mensagens neste tópico (2) Responder (através da web) | Adicionar um novo tópico Mensagens | Arquivos | Fotos | Links | Banco de dados | Enquetes Alterar configurações via web (Requer Yahoo! ID) Alterar configurações via e-mail: Alterar recebimento para lista diária de mensagens | Alterar formato para o tradicional Visite seu Grupo | Termos de uso do Yahoo! Grupos | Sair do grupo __

O objeto nm se altera: 2011/3/20 Mauro Sznelwar <sznelwar@uol.com.br>
Estava olhando vossa solução, e quando copiei e colei vi que só os três primeiros comandos funcionam, não vi diferença quando coloca o restante a partir do StrP. .
Marcio, uma alternativa talvez seja:
nm <- c("Aaaaaa aaaaaaa aa", "Bbbbbb bbbbbb", "cccc") y <- c(10,4,9) barplot(y, names.arg = nm) strP <- .5 nm[strwidth( nm) > strP] <- gsub("( \\w*$)", "\n\\1", nm[strwidth( nm) > strP])
2008/10/25 Marcio Nicolau <marcio.nicolau@ gmail.com<marcio.nicolau@gmail.com>
Prezados,
A algum tempo, questionei na lista sobre a existência de uma função para quebra de linha automática para títulos de gráficos.
Após a sugestão do Benilton (função gsub), segue abaixo o código... caso necessitem.
## Pre-Processa titulos
pretitulo <- function(orig, cut=55) { nparts = ceiling(nchar( orig) / cut) cuts = c(1,1:nparts * cut) spt = strsplit(orig,"\\s")[[1]] cs = cumsum(nchar( spt))
ids <- matrix(FALSE, nparts,length( nchar(spt) )) for(i in 2:length(cuts) ) { ids[i-1,] <- (cs >= cuts[i-1] & cs < cuts[i]) }
ch <- vector("character", nparts) for(i in 1:nparts) { ch[[i]] <- paste(spt[ids[ i,]],collapse = " ") } pretitulo <- paste(ch,collapse="\n") }
Não é o melhor, computacionalmente falando, mas funciona :)
Abraços
Marcio Nicolau marcio.nicolau@ gmail.com <marcio.nicolau@gmail.com>
------------ --------- --------- ------
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse: http://br.groups. yahoo.com/ group/R_STAT/<http://br.groups.yahoo.com/group/R_STAT/>
<*> Para sair deste grupo, envie um e-mail para: R_STAT-unsubscribe@ yahoogrupos. com.br<R_STAT-unsubscribe@yahoogrupos.com.br>
<*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo. com/info/ utos.html<http://br.yahoo.com/info/utos.html>
-- Henrique Dallazuanna Curitiba-Paraná -Brasil 25° 25' 40" S 49° 16' 22" O __._,_.___ Mensagens neste tópico <http://br.groups.yahoo.com/group/R_STAT/message/4566;_ylc=X3oDMTM1ZTNtOHM2BF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRtc2dJZAM0NTY4BHNlYwNmdHIEc2xrA3Z0cGMEc3RpbWUDMTIyNDk3NTI4NQR0cGNJZAM0NTY2> (2) Responder (através da web) <http://br.groups.yahoo.com/group/R_STAT/post;_ylc=X3oDMTJxNTZ0dW9vBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRtc2dJZAM0NTY4BHNlYwNmdHIEc2xrA3JwbHkEc3RpbWUDMTIyNDk3NTI4NQ--?act=reply&messageNum=4568>| Adicionar um novo tópico <http://br.groups.yahoo.com/group/R_STAT/post;_ylc=X3oDMTJmdDI5dmExBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNudHBjBHN0aW1lAzEyMjQ5NzUyODU-> Mensagens<http://br.groups.yahoo.com/group/R_STAT/messages;_ylc=X3oDMTJmajQxb2htBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNtc2dzBHN0aW1lAzEyMjQ5NzUyODU->| Arquivos<http://br.groups.yahoo.com/group/R_STAT/files;_ylc=X3oDMTJnOW5oM3JnBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNmaWxlcwRzdGltZQMxMjI0OTc1Mjg1>| Fotos<http://br.groups.yahoo.com/group/R_STAT/photos;_ylc=X3oDMTJmcXJmaGc3BF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNwaG90BHN0aW1lAzEyMjQ5NzUyODU->| Links<http://br.groups.yahoo.com/group/R_STAT/links;_ylc=X3oDMTJnbmMwcTgxBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNsaW5rcwRzdGltZQMxMjI0OTc1Mjg1>| Banco de dados<http://br.groups.yahoo.com/group/R_STAT/database;_ylc=X3oDMTJkaTMzN2ppBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNkYgRzdGltZQMxMjI0OTc1Mjg1>| Enquetes<http://br.groups.yahoo.com/group/R_STAT/polls;_ylc=X3oDMTJnZTgzN2IwBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNwb2xscwRzdGltZQMxMjI0OTc1Mjg1> [image: Yahoo! Grupos]<http://br.groups.yahoo.com/;_ylc=X3oDMTJlOGxubWpwBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNnZnAEc3RpbWUDMTIyNDk3NTI4NQ--> Alterar configurações via web<http://br.groups.yahoo.com/group/R_STAT/join;_ylc=X3oDMTJnbzBoY29hBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNzdG5ncwRzdGltZQMxMjI0OTc1Mjg1>(Requer Yahoo! ID) Alterar configurações via e-mail: Alterar recebimento para lista diária de mensagens<R_STAT-digest@yahoogrupos.com.br?subject=%20Recebimento%20de%20e-mail:%20Lista%20de%20mensagens>| Alterar formato para o tradicional<R_STAT-traditional@yahoogrupos.com.br?subject=Alterar%20formato%20de%20distribui%C3%A7%C3%A3o:%20Tradicional> Visite seu Grupo <http://br.groups.yahoo.com/group/R_STAT;_ylc=X3oDMTJlbWJ2bXJnBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNocGYEc3RpbWUDMTIyNDk3NTI4NQ-->| Termos de uso do Yahoo! Grupos <http://br.yahoo.com/info/utos.html>| Sair do grupo <R_STAT-unsubscribe@yahoogrupos.com.br?subject=>
__
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O

comece do basico e tente par(mfrow=c(1, 2)) plot(1, main="Titulo Normal") plot(1, main="Titulo\nNormal") b 2011/3/20 Mauro Sznelwar <sznelwar@uol.com.br>
Estava olhando vossa solução, e quando copiei e colei vi que só os três primeiros comandos funcionam, não vi diferença quando coloca o restante a partir do StrP. .
Marcio, uma alternativa talvez seja:
nm <- c("Aaaaaa aaaaaaa aa", "Bbbbbb bbbbbb", "cccc") y <- c(10,4,9) barplot(y, names.arg = nm) strP <- .5 nm[strwidth( nm) > strP] <- gsub("( \\w*$)", "\n\\1", nm[strwidth( nm) > strP])
2008/10/25 Marcio Nicolau <marcio.nicolau@ gmail.com<marcio.nicolau@gmail.com>
Prezados,
A algum tempo, questionei na lista sobre a existência de uma função para quebra de linha automática para títulos de gráficos.
Após a sugestão do Benilton (função gsub), segue abaixo o código... caso necessitem.
## Pre-Processa titulos
pretitulo <- function(orig, cut=55) { nparts = ceiling(nchar( orig) / cut) cuts = c(1,1:nparts * cut) spt = strsplit(orig,"\\s")[[1]] cs = cumsum(nchar( spt))
ids <- matrix(FALSE, nparts,length( nchar(spt) )) for(i in 2:length(cuts) ) { ids[i-1,] <- (cs >= cuts[i-1] & cs < cuts[i]) }
ch <- vector("character", nparts) for(i in 1:nparts) { ch[[i]] <- paste(spt[ids[ i,]],collapse = " ") } pretitulo <- paste(ch,collapse="\n") }
Não é o melhor, computacionalmente falando, mas funciona :)
Abraços
Marcio Nicolau marcio.nicolau@ gmail.com <marcio.nicolau@gmail.com>
------------ --------- --------- ------
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse: http://br.groups. yahoo.com/ group/R_STAT/<http://br.groups.yahoo.com/group/R_STAT/>
<*> Para sair deste grupo, envie um e-mail para: R_STAT-unsubscribe@ yahoogrupos. com.br<R_STAT-unsubscribe@yahoogrupos.com.br>
<*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo. com/info/ utos.html<http://br.yahoo.com/info/utos.html>
-- Henrique Dallazuanna Curitiba-Paraná -Brasil 25° 25' 40" S 49° 16' 22" O __._,_.___ Mensagens neste tópico <http://br.groups.yahoo.com/group/R_STAT/message/4566;_ylc=X3oDMTM1ZTNtOHM2BF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRtc2dJZAM0NTY4BHNlYwNmdHIEc2xrA3Z0cGMEc3RpbWUDMTIyNDk3NTI4NQR0cGNJZAM0NTY2> (2) Responder (através da web) <http://br.groups.yahoo.com/group/R_STAT/post;_ylc=X3oDMTJxNTZ0dW9vBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRtc2dJZAM0NTY4BHNlYwNmdHIEc2xrA3JwbHkEc3RpbWUDMTIyNDk3NTI4NQ--?act=reply&messageNum=4568>| Adicionar um novo tópico <http://br.groups.yahoo.com/group/R_STAT/post;_ylc=X3oDMTJmdDI5dmExBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNudHBjBHN0aW1lAzEyMjQ5NzUyODU-> Mensagens<http://br.groups.yahoo.com/group/R_STAT/messages;_ylc=X3oDMTJmajQxb2htBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNtc2dzBHN0aW1lAzEyMjQ5NzUyODU->| Arquivos<http://br.groups.yahoo.com/group/R_STAT/files;_ylc=X3oDMTJnOW5oM3JnBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNmaWxlcwRzdGltZQMxMjI0OTc1Mjg1>| Fotos<http://br.groups.yahoo.com/group/R_STAT/photos;_ylc=X3oDMTJmcXJmaGc3BF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNwaG90BHN0aW1lAzEyMjQ5NzUyODU->| Links<http://br.groups.yahoo.com/group/R_STAT/links;_ylc=X3oDMTJnbmMwcTgxBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNsaW5rcwRzdGltZQMxMjI0OTc1Mjg1>| Banco de dados<http://br.groups.yahoo.com/group/R_STAT/database;_ylc=X3oDMTJkaTMzN2ppBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNkYgRzdGltZQMxMjI0OTc1Mjg1>| Enquetes<http://br.groups.yahoo.com/group/R_STAT/polls;_ylc=X3oDMTJnZTgzN2IwBF9TAzk3NDkwNDM3BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNwb2xscwRzdGltZQMxMjI0OTc1Mjg1> [image: Yahoo! Grupos]<http://br.groups.yahoo.com/;_ylc=X3oDMTJlOGxubWpwBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNnZnAEc3RpbWUDMTIyNDk3NTI4NQ--> Alterar configurações via web<http://br.groups.yahoo.com/group/R_STAT/join;_ylc=X3oDMTJnbzBoY29hBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNzdG5ncwRzdGltZQMxMjI0OTc1Mjg1>(Requer Yahoo! ID) Alterar configurações via e-mail: Alterar recebimento para lista diária de mensagens<R_STAT-digest@yahoogrupos.com.br?subject=%20Recebimento%20de%20e-mail:%20Lista%20de%20mensagens>| Alterar formato para o tradicional<R_STAT-traditional@yahoogrupos.com.br?subject=Alterar%20formato%20de%20distribui%C3%A7%C3%A3o:%20Tradicional> Visite seu Grupo <http://br.groups.yahoo.com/group/R_STAT;_ylc=X3oDMTJlbWJ2bXJnBF9TAzk3NDkwNDM1BGdycElkAzExOTIzMjc1BGdycHNwSWQDMjEzNzExMTYwNQRzZWMDZnRyBHNsawNocGYEc3RpbWUDMTIyNDk3NTI4NQ-->| Termos de uso do Yahoo! Grupos <http://br.yahoo.com/info/utos.html>| Sair do grupo <R_STAT-unsubscribe@yahoogrupos.com.br?subject=>
__
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
participantes (4)
-
Benilton Carvalho
-
Fabio Mathias Corrêa
-
Henrique Dallazuanna
-
Mauro Sznelwar