emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Make * bold or use colour for export to html and LaTeX


From: Andreas Leha
Subject: Re: [O] Make * bold or use colour for export to html and LaTeX
Date: Fri, 10 Oct 2014 13:23:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (darwin)

Hi Rainer,

Rainer M Krug <address@hidden> writes:
> Hi
>
> I want to highlight the cells in the table below with "***" by using
> color red for the font, "**' by using green for the font, ... or, if not 
> possible, bold. Is any of this possible?
>
> The table is generated in R, so the ascii package might help (just
> thinking about it while typing)?
>
> Thanks,
>
> Rainer 
>
> |                            |  slope | intercept | p             |           
> pm |            pb |
> |----------------------------+--------+-----------+---------------+--------------+---------------|
> | quercus_robur.single       | -1.358 |      4.76 |               |           
>    |               |
> | quercus_robur.95           | -1.957 |      5.71 | 3.96e-21 ***   | 7.47e-07 
> *** |  7.60e-09 *** |
> | quercus_robur.90           | -1.752 |      5.42 | 3.43e-02 *    |   
> 7.18e-02 . |    4.79e-02 * |
> | quercus_robur.85           | -1.773 |      5.41 | 4.11e-01      |     
> 8.33e-01 |      9.38e-


I am not sure to understand your question correctly, but if the table is
R generated anyway, why not use R to provide the formatting for org?


Like -- as a start -- this function, that does the simplest of those and
replaces "***" with bold:

--8<---------------cut here---------------start------------->8---
boldpattern <- " \\*\\*\\*$"
tbl <- apply(tbl, 2,
             function(x) ifelse(grepl(boldpattern, x),
                                paste0("*", gsub(boldpattern, "", x), "*"),
                                x))
--8<---------------cut here---------------end--------------->8---


Here as full example in action:

--8<---------------cut here---------------start------------->8---
## ---------------------------------- ##
## create a table                     ##
## ---------------------------------- ##

## from ?lm
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2, 10, 20, labels = c("Ctl","Trt"))
weight <- c(ctl, trt)
lm.D9 <- lm(weight ~ group)
lm.D90 <- lm(weight ~ group - 1) # omitting intercept
## extract the coefficients
tbl <- summary(lm.D90)$coefficients
## add the signif codes
tbl[,4] <- paste(tbl[,4],
                 symnum(tbl[,4], corr = FALSE, na = FALSE, 
                        cutpoints = c(0, 0.001, 0.01, 0.05, 0.1, 1), 
                        symbols = c("***", "**", "*", ".", " ")))
tbl


## ---------------------------------- ##
## make them 'org-bold'               ##
## ---------------------------------- ##
boldpattern <- " \\*\\*\\*$"
tbl <- apply(tbl, 2,
             function(x) ifelse(grepl(boldpattern, x),
                                paste0("*", gsub(boldpattern, "", x), "*"),
                                x))
tbl
--8<---------------cut here---------------end--------------->8---


HTH,
Andreas

PS: The usual "don't use the signif.codes" applies.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]