Ich habe einige Probleme mit der Änderung der thead Hintergrundfarbe mit dem htmlTable-Paket in R. Durch herumspielen mit den css.cell Optionen konnte ich die Farbe eines Teils der Tabelle ändern Header, aber nicht alle (Code-Snippet ausführen).Ändern der Tabelle Header-Farbe mit htmlTable
require(htmlTable)
mat <- matrix(1:20, ncol=5)
htmlTable(mat,cgroup = c("","Rank",""),n.cgroup = c(1,3,1),
header = LETTERS[1:5],
css.cell = rbind(rep("background: lightgrey;",
times=ncol(mat)),
matrix("", ncol=ncol(mat), nrow=nrow(mat))))
# Not Run
# x = htmlTable(mat,cgroup = c("","Rank",""),n.cgroup = c(1,3,1),
# header = LETTERS[1:5],
# css.cell = rbind(rep("background: lightgrey;",
# times=ncol(mat)),
# matrix("", ncol=ncol(mat), nrow=nrow(mat))))
# get the output
# as.character(x)
Die Ausgabe aus dem Code erzeugt die folgenden
<table class='gmisc_table' style='border-collapse: collapse; margin-top: 1em; margin-bottom: 1em;'>\n
<thead>\n
<tr>\n
<th colspan='1' style='font-weight: 900; border-top: 2px solid grey; text-align: center;'></th>
<th style='border-top: 2px solid grey;; border-bottom: hidden;'> </th>\n
<th colspan='3' style='font-weight: 900; border-bottom: 1px solid grey; border-top: 2px solid grey; text-align: center;'>Rank</th>
<th style='border-top: 2px solid grey;; border-bottom: hidden;'> </th>\n
<th colspan='1' style='font-weight: 900; border-top: 2px solid grey; text-align: center;'></th>\n</tr>\n
<tr>\n
<th style='background: lightgrey; border-bottom: 1px solid grey; text-align: center;'>A</th>\n
<th style='border-bottom: 1px solid grey;' colspan='1'> </th>\n
<th style='background: lightgrey; border-bottom: 1px solid grey; text-align: center;'>B</th>\n
<th style='background: lightgrey; border-bottom: 1px solid grey; text-align: center;'>C</th>\n
<th style='background: lightgrey; border-bottom: 1px solid grey; text-align: center;'>D</th>\n
<th style='border-bottom: 1px solid grey;' colspan='1'> </th>\n
<th style='background: lightgrey; border-bottom: 1px solid grey; text-align: center;'>E</th>\n</tr>\n</thead>\n
<tbody>\n
<tr>\n
<td style='text-align: center;'>1</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>5</td>\n
<td style='text-align: center;'>9</td>\n
<td style='text-align: center;'>13</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>17</td>\n</tr>\n
<tr>\n
<td style='text-align: center;'>2</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>6</td>\n
<td style='text-align: center;'>10</td>\n
<td style='text-align: center;'>14</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>18</td>\n</tr>\n
<tr>\n
<td style='text-align: center;'>3</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>7</td>\n
<td style='text-align: center;'>11</td>\n
<td style='text-align: center;'>15</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>19</td>\n</tr>\n
<tr>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>4</td>\n
<td style='border-bottom: 2px solid grey;' colspan='1'> </td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>8</td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>12</td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>16</td>\n
<td style='border-bottom: 2px solid grey;' colspan='1'> </td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>20</td>\n</tr>\n</tbody>\n</table>
Offensichtlich die "\ n" Ausgang ärgerlich ist, aber leicht handhabbar sein. Aber hat jemand irgendwelche Ideen, wie man die Hintergrundfarbe im Tabellenkopf direkt von R aus steuert?
Ich weiß, dass ich den thead-Stil manuell anpassen kann, indem ich folgendes zur html-Ausgabe hinzufüge: style = "background-color: lightgrey;", aber es wäre sehr schön, wenn ich die gewünschte Ausgabe direkt von R bekommen könnte .
Hier ist meine gewünschte Tabelle ausgegeben, wenn ich die Hintergrundfarbe in thead manuell ändern:
<table class='gmisc_table' style='border-collapse: collapse; margin-top: 1em; margin-bottom: 1em;'>\n
<thead style="background-color: lightgrey;">\n
<tr>\n
<th colspan='1' style='font-weight: 900; border-top: 2px solid grey; text-align: center;'></th>
<th style='border-top: 2px solid grey;; border-bottom: hidden;'> </th>\n
<th colspan='3' style='font-weight: 900; border-bottom: 1px solid grey; border-top: 2px solid grey; text-align: center;'>Rank</th>
<th style='border-top: 2px solid grey;; border-bottom: hidden;'> </th>\n
<th colspan='1' style='font-weight: 900; border-top: 2px solid grey; text-align: center;'></th>\n</tr>\n
<tr>\n
<th style='border-bottom: 1px solid grey; text-align: center;'>A</th>\n
<th style='border-bottom: 1px solid grey;' colspan='1'> </th>\n
<th style='border-bottom: 1px solid grey; text-align: center;'>B</th>\n
<th style='border-bottom: 1px solid grey; text-align: center;'>C</th>\n
<th style='border-bottom: 1px solid grey; text-align: center;'>D</th>\n
<th style='border-bottom: 1px solid grey;' colspan='1'> </th>\n
<th style='border-bottom: 1px solid grey; text-align: center;'>E</th>\n</tr>\n</thead>\n
<tbody>\n
<tr>\n
<td style='text-align: center;'>1</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>5</td>\n
<td style='text-align: center;'>9</td>\n
<td style='text-align: center;'>13</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>17</td>\n</tr>\n
<tr>\n
<td style='text-align: center;'>2</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>6</td>\n
<td style='text-align: center;'>10</td>\n
<td style='text-align: center;'>14</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>18</td>\n</tr>\n
<tr>\n
<td style='text-align: center;'>3</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>7</td>\n
<td style='text-align: center;'>11</td>\n
<td style='text-align: center;'>15</td>\n
<td style='' colspan='1'> </td>\n
<td style='text-align: center;'>19</td>\n</tr>\n
<tr>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>4</td>\n
<td style='border-bottom: 2px solid grey;' colspan='1'> </td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>8</td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>12</td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>16</td>\n
<td style='border-bottom: 2px solid grey;' colspan='1'> </td>\n
<td style='border-bottom: 2px solid grey; text-align: center;'>20</td>\n</tr>\n</tbody>\n</table>
zusätzlichen Bonus, wenn jemand weiß, wie man loswerden der „\ n " Ausgabe, die auch sehr hilfreich wäre
Sehr cool auch. – anotherFishGuy
Das Tutorial war sehr hilfreich – anotherFishGuy
Vielen Dank. Jede Rückmeldung ist mehr als willkommen :) – LyzandeR