如何在闪亮的应用程序中用颜色画线

Posted

技术标签:

【中文标题】如何在闪亮的应用程序中用颜色画线【英文标题】:How to draw a line with color in shiny application 【发布时间】:2014-07-02 18:52:49 【问题描述】:

这对很多人来说可能是最简单的事情,但我正在努力解决它。 我想用html标签“hr”画一条带颜色的线 这是我迄今为止在 ui.R 文件中尝试过的:

HTML("<hr color='purple' >")
HTML('<hr color="purple" >')
hr( color="purple" )

它们都不起作用 - 请问有什么建议吗?

【问题讨论】:

hr element 没有color 属性。尝试使用您的工具生成 HTML。 【参考方案1】:

Shiny 公开了对应用程序外观和感觉的大量控制,但碰巧hr 的颜色不是其中之一。所以你需要深入研究 CSS 来控制元素的外观。您可以通过在 Shiny 中使用 includeCSS 添加样式表来实现此目的,您可以使用该样式表来控制应用程序的外观。然而,最简单的方法可能就是直接将 CSS 添加到您的 hr 元素中。

HTML('<hr style="color: purple;">')

(编辑)请注意,虽然这适用于大多数元素,但 hr 不尊重 color 属性。 hrs 行为怪异:Changing the color of an hr element

在这里,您正在修改 hr 元素的 CSS color 属性。见https://developer.mozilla.org/en-US/docs/Web/CSS/color

另外请注意,如果您愿意,可以使用hr(style="...") 而不是构建原始 HTML。我发现在大多数情况下,使用 Shiny 标签构建所有内容会使代码更容易阅读,但 YMMV。

【讨论】:

我刚刚尝试了您的建议,但仍然没有为线条添加颜色。我正在使用 Chrome 版本 34.0.1847.131 m。你觉得这和它有关系吗? 对不起,我刚刚编辑了。这些 cmets 对于大多数元素都是正确的,但 hrs 很奇怪。您只需要找到正确的 CSS 来设置 hr 的样式。 ***.com/questions/6382023/… 谢谢 Jeff - 所以,这是镀铬的孔之一。我现在对线条的边框颜色很好。 结合以上和以下答案的元素,这适用于 R Shiny 版本 1.2.0:hr(style="border-color: purple")。仅使用 color 而不是 border-color 对我来说不起作用。【参考方案2】:

这里需要快速挖掘/阅读答案和 cmets,但总而言之,这看起来可行(我在 Mac Chrome、Safari 和 Firefox 上进行了测试):

tags$hr(style="border-color: purple;")

如果需要,您也可以使用HTML(),但不妨坚持使用Shiny tags,恕我直言。

【讨论】:

以上是关于如何在闪亮的应用程序中用颜色画线的主要内容,如果未能解决你的问题,请参考以下文章

在 bs4Dash R 闪亮应用中永久更改导航栏主题颜色

如何使用 Core Graphics 绘制箭头?

Matlab用plot如何分别设置多条线宽?

如何在谷歌地图上画线

Java画线和按键改变颜色

为啥我在 UIView 上画线时需要背景颜色?