我正在尝试使用自定义样式表来更改TornadoFX中条形图条的颜色/阴影。
我碰到了这篇文章:JavaFX BarChart bar color,它使用-fx-bar-fill
选择器,但是我很难将其转换为TornadoFX将接受的形式。
这是我的样式表:
class BarChartStyles : Stylesheet(){
companion object {
val histogramChart by cssclass()
val backColor = c("#4682B4")
}
init{
histogramChart{
defaultColor0{
chartBar{
barFill = backColor
}
}
}
}
}
这就是我声明
BarChart
的方式:barchart("my histogram", CategoryAxis(), NumberAxis()){
barGap = 0.0
categoryGap = 0.0
hgrow = Priority.ALWAYS
vgrow = Priority.ALWAYS
style{
minWidth = 640.px
minHeight = 240.px
maxHeight = 480.px
}
addClass(BarChartStyles.histogramChart)
series("Portfolio 1") {
data("1", 23)
data("2", 14)
data("3", 15)
data("4", 23)
data("5", 14)
data("6", 15)
data("7", 23)
data("8", 14)
data("9", 15)
data("10", 23)
data("11", 14)
data("12", 15)
data("13", 23)
data("14", 14)
data("15", 15)
data("16", 23)
data("17", 14)
data("18", 15)
}
}
最佳答案
没有TornadoFX,您可以在样式表中使用.chart-bar
选择器,而无需定义任何自定义CSS类:
.chart-bar {
-fx-bar-fill: #4682B4;
}
TornadoFX的等效项是:
class BarChartStyles : Stylesheet() {
companion object {
val backColor = c("#4682B4")
val chartBar by cssclass()
}
init {
chartBar {
barFill = backColor
}
}
}
应用样式后,您的示例如下所示: