Create A Chart Theme
chartTheme.RdCreate a chart.theme object for use within chartSeries to manage desired chart colors.
Details
Used as an argument to the chartSeries family of functions,
chartTheme allows for on-the-fly modification
of pre-specified chart ‘themes’. Users can modify
a pre-built theme in-place, or copy the theme to a new
variable for use in subsequent charting calls.
Internally a chart.theme object is nothing more than a list of values organized by chart components. The primary purpose of this is to facilitate minor modification on the fly, as well as provide a template for larger changes.
Setting style arguments for TA calls via chartTheme requires the user to pass the styles as name=value pairs with a name containing the TA call in question. See examples for assistance.
Current components that may be modified with appropriate values:
fg.col: foreground colorbg.col: background colorgrid.col: grid colorborder: border colorminor.tick: minor tickmark colormajor.tick: major tickmark colorup.col: up bar/candle colordn.col: down bar/candle colorup.up.col: up after up bar/candle colorup.dn.col: up after down bar/candle colordn.dn.col: down after down bar/candle colordn.up.col: down after up bar/candle colorup.border: up bar/candle border colordn.border: down bar/candle border colorup.up.border: up after up bar/candle border colorup.dn.border: up after down bar/candle border colordn.dn.border: down after down bar/candle border colordn.up.border: down after up bar/candle border color
Examples
chartTheme()
#> List of 27
#> $ fg.col : chr "#666666"
#> $ bg.col : chr "#222222"
#> $ grid.col : chr "#303030"
#> $ border : chr "#666666"
#> $ minor.tick : chr "#303030"
#> $ major.tick : chr "#AAAAAA"
#> $ up.col : chr "#00FF00"
#> $ dn.col : chr "#FF9900"
#> $ dn.up.col : chr "#888888"
#> $ up.up.col : chr "#FFFFFF"
#> $ dn.dn.col : chr "#FF0000"
#> $ up.dn.col : chr "#000000"
#> $ up.border : chr "#666666"
#> $ dn.border : chr "#666666"
#> $ dn.up.border: chr "#666666"
#> $ up.up.border: chr "#666666"
#> $ dn.dn.border: chr "#666666"
#> $ up.dn.border: chr "#666666"
#> $ main.col : chr "#999999"
#> $ sub.col : chr "#999999"
#> $ area : chr "#252525"
#> $ fill : chr "#282828"
#> $ Expiry : chr "#383838"
#> $ BBands.col : chr "red"
#> $ BBands.fill : chr "#282828"
#> $ BBands :List of 2
#> ..$ col : chr "red"
#> ..$ fill: chr "#282828"
#> $ theme.name : chr "black"
#> - attr(*, "class")= chr "chart.theme"
chartTheme('white')
#> List of 24
#> $ fg.col : chr "#000000"
#> $ bg.col : chr "#F0F0F0"
#> $ grid.col : chr "#CCCCCC"
#> $ border : chr "#444444"
#> $ minor.tick : chr "#888888"
#> $ major.tick : chr "#000000"
#> $ up.col : chr "#00CC00"
#> $ dn.col : chr "#FF7700"
#> $ dn.up.col : chr "#888888"
#> $ up.up.col : chr "#FFFFFF"
#> $ dn.dn.col : chr "#FF0000"
#> $ up.dn.col : chr "#000000"
#> $ up.border : chr "#444444"
#> $ dn.border : chr "#444444"
#> $ dn.up.border: chr "#444444"
#> $ up.up.border: chr "#444444"
#> $ dn.dn.border: chr "#444444"
#> $ up.dn.border: chr "#444444"
#> $ main.col : chr "#555555"
#> $ sub.col : chr "#555555"
#> $ area : chr "#FFFFFF"
#> $ fill : chr "#F7F7F7"
#> $ Expiry : chr "#C9C9C9"
#> $ theme.name : chr "white"
#> - attr(*, "class")= chr "chart.theme"
chartTheme('white',up.col='blue',dn.col='red')
#> List of 24
#> $ fg.col : chr "#000000"
#> $ bg.col : chr "#F0F0F0"
#> $ grid.col : chr "#CCCCCC"
#> $ border : chr "#444444"
#> $ minor.tick : chr "#888888"
#> $ major.tick : chr "#000000"
#> $ up.col : chr "blue"
#> $ dn.col : chr "red"
#> $ dn.up.col : chr "#888888"
#> $ up.up.col : chr "#FFFFFF"
#> $ dn.dn.col : chr "#FF0000"
#> $ up.dn.col : chr "#000000"
#> $ up.border : chr "#444444"
#> $ dn.border : chr "#444444"
#> $ dn.up.border: chr "#444444"
#> $ up.up.border: chr "#444444"
#> $ dn.dn.border: chr "#444444"
#> $ up.dn.border: chr "#444444"
#> $ main.col : chr "#555555"
#> $ sub.col : chr "#555555"
#> $ area : chr "#FFFFFF"
#> $ fill : chr "#F7F7F7"
#> $ Expiry : chr "#C9C9C9"
#> $ theme.name : chr "white"
#> - attr(*, "class")= chr "chart.theme"
# A TA example
chartTheme(addRSI.col='red')
#> List of 28
#> $ fg.col : chr "#666666"
#> $ bg.col : chr "#222222"
#> $ grid.col : chr "#303030"
#> $ border : chr "#666666"
#> $ minor.tick : chr "#303030"
#> $ major.tick : chr "#AAAAAA"
#> $ up.col : chr "#00FF00"
#> $ dn.col : chr "#FF9900"
#> $ dn.up.col : chr "#888888"
#> $ up.up.col : chr "#FFFFFF"
#> $ dn.dn.col : chr "#FF0000"
#> $ up.dn.col : chr "#000000"
#> $ up.border : chr "#666666"
#> $ dn.border : chr "#666666"
#> $ dn.up.border: chr "#666666"
#> $ up.up.border: chr "#666666"
#> $ dn.dn.border: chr "#666666"
#> $ up.dn.border: chr "#666666"
#> $ main.col : chr "#999999"
#> $ sub.col : chr "#999999"
#> $ area : chr "#252525"
#> $ fill : chr "#282828"
#> $ Expiry : chr "#383838"
#> $ BBands.col : chr "red"
#> $ BBands.fill : chr "#282828"
#> $ BBands :List of 2
#> ..$ col : chr "red"
#> ..$ fill: chr "#282828"
#> $ theme.name : chr "black"
#> $ addRSI.col : chr "red"
#> - attr(*, "class")= chr "chart.theme"
str(chartTheme())
#> List of 27
#> $ fg.col : chr "#666666"
#> $ bg.col : chr "#222222"
#> $ grid.col : chr "#303030"
#> $ border : chr "#666666"
#> $ minor.tick : chr "#303030"
#> $ major.tick : chr "#AAAAAA"
#> $ up.col : chr "#00FF00"
#> $ dn.col : chr "#FF9900"
#> $ dn.up.col : chr "#888888"
#> $ up.up.col : chr "#FFFFFF"
#> $ dn.dn.col : chr "#FF0000"
#> $ up.dn.col : chr "#000000"
#> $ up.border : chr "#666666"
#> $ dn.border : chr "#666666"
#> $ dn.up.border: chr "#666666"
#> $ up.up.border: chr "#666666"
#> $ dn.dn.border: chr "#666666"
#> $ up.dn.border: chr "#666666"
#> $ main.col : chr "#999999"
#> $ sub.col : chr "#999999"
#> $ area : chr "#252525"
#> $ fill : chr "#282828"
#> $ Expiry : chr "#383838"
#> $ BBands.col : chr "red"
#> $ BBands.fill : chr "#282828"
#> $ BBands :List of 2
#> ..$ col : chr "red"
#> ..$ fill: chr "#282828"
#> $ theme.name : chr "black"
#> - attr(*, "class")= chr "chart.theme"