浏览代码

Add convenience method `aa_toAAOptions()` for AAChartModel

AnAn 4 年之前
父节点
当前提交
3d2998fc3b

+ 6 - 0
charts/src/main/java/com/github/aachartmodel/aainfographics/aachartcreator/AAChartModel.kt

@@ -28,6 +28,7 @@
 
 package com.github.aachartmodel.aainfographics.aachartcreator
 
+import com.github.aachartmodel.aainfographics.aaoptionsmodel.AAOptions
 import com.github.aachartmodel.aainfographics.aaoptionsmodel.AAScrollablePlotArea
 import com.github.aachartmodel.aainfographics.aaoptionsmodel.AAStyle
 
@@ -458,4 +459,9 @@ class AAChartModel {
         borderRadius = 0f//柱状图长条图头部圆角半径(可用于设置头部的形状,仅对条形图,柱状图有效,设置为1000时,柱形图或者条形图头部为楔形)
         markerRadius = 6f//折线连接点的半径长度,如果值设置为0,这样就相当于不显示了
     }
+}
+
+
+fun AAChartModel.aa_toAAOptions(): AAOptions{
+    return AAOptionsConstructor.configureChartOptions(this)
 }

+ 2 - 2
charts/src/main/java/com/github/aachartmodel/aainfographics/aachartcreator/AAChartView.kt

@@ -151,12 +151,12 @@ class AAChartView : WebView {
     }
 
     fun aa_drawChartWithChartModel(chartModel: AAChartModel) {
-        val aaOptions: AAOptions = AAOptionsConstructor.configureChartOptions(chartModel)
+        val aaOptions: AAOptions = chartModel.aa_toAAOptions()
         aa_drawChartWithChartOptions(aaOptions)
     }
 
     fun aa_refreshChartWithChartModel(chartModel: AAChartModel) {
-        val aaOptions: AAOptions = AAOptionsConstructor.configureChartOptions(chartModel)
+        val aaOptions: AAOptions = chartModel.aa_toAAOptions()
         aa_refreshChartWithChartOptions(aaOptions)
     }
 

+ 2 - 2
sample/src/main/java/com/github/aachartmodel/aainfographics/demo/additionalcontent/DoubleChartsLinkedWorkActivity.kt

@@ -102,7 +102,7 @@ class DoubleChartsLinkedWorkActivity : AppCompatActivity(),
                                 211, 183, 157, 133, 111, 91, 73, 57, 43, 31, 21, 13
                             ))
                         .colorByPoint(true)))
-        val aaOptions: AAOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions: AAOptions = aaChartModel.aa_toAAOptions()
         aaOptions.plotOptions?.column?.groupPadding = 0f
         return aaOptions
     }
@@ -122,7 +122,7 @@ class DoubleChartsLinkedWorkActivity : AppCompatActivity(),
                                 211,183,157,133,111,91,73,57,43,31,21,13,
                             ))
             ))
-        val aaOptions: AAOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions: AAOptions = aaChartModel.aa_toAAOptions()
         aaOptions.plotOptions?.column?.groupPadding = 0f
         return aaOptions
     }

+ 1 - 1
sample/src/main/java/com/github/aachartmodel/aainfographics/demo/additionalcontent/OnlyRefreshChartDataActivity.kt

@@ -55,7 +55,7 @@ class OnlyRefreshChartDataActivity : AppCompatActivity() {
     fun setUpAAChartView() {
         aaChartView = findViewById(R.id.AAChartView)
         aaChartModel = configureAAChartModel()
-        val aaOptions: AAOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions: AAOptions = aaChartModel.aa_toAAOptions()
         if (aaChartModel.chartType == AAChartType.Column) {
             aaOptions.plotOptions?.column!!
                 .groupPadding(0f)

+ 11 - 11
sample/src/main/java/com/github/aachartmodel/aainfographics/demo/chartcomposer/ChartOptionsComposer.kt

@@ -73,7 +73,7 @@ class ChartOptionsComposer {
                 .colorsTheme(arrayOf("mediumspringgreen", "deepskyblue", "red", "sandybrown"))
                 .series(arrayOf(element1, element2, element3, element4))
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
 
             aaOptions.legend!!
                 .enabled(true)
@@ -104,7 +104,7 @@ class ChartOptionsComposer {
                         .lineWidth(10.0f)
                 ))
 
-        val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions = aaChartModel.aa_toAAOptions()
         val aaPlotBandsElementArr = arrayOf(
             AAPlotBandsElement()
                 .from(0f)
@@ -167,7 +167,7 @@ class ChartOptionsComposer {
                         .zones(zonesArr)
                 ))
 
-        val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions = aaChartModel.aa_toAAOptions()
         val aaPlotLinesElementsArr = arrayOf(
             AAPlotLinesElement()
                 .color("#1e90ff")//颜色值(16进制)
@@ -259,7 +259,7 @@ function () {
             .style(AAStyle()
                 .color("#FFD700")
                 .fontSize(12f))
-        val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions = aaChartModel.aa_toAAOptions()
         aaOptions.tooltip = aaTooltip
         return aaOptions
     }
@@ -305,7 +305,7 @@ function () {
                         arrayOf(12489984, 13.6)
                     ))))
 
-        val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+        val aaOptions = aaChartModel.aa_toAAOptions()
         val aaCrosshair = AACrosshair()
             .color(AAColor.Red)
             .width(1f)
@@ -345,7 +345,7 @@ function () {
                         .data(arrayOf(7.0, 6.9, 2.5, 14.5, 18.2, 21.5, 5.2, 26.5, 23.3, 45.3, 13.9, 9.6))
                 ))
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.xAxis?.labels?.useHTML(true)
             return aaOptions
         }
@@ -381,7 +381,7 @@ function () {
                          .data(arrayOf(7.0, 6.9, 2.5, 14.5, 18.2, 21.5, 5.2, 26.5, 23.3, 45.3, 13.9, 9.6))
                  ))
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.xAxis?.labels?.useHTML(true)
 
             return aaOptions
@@ -419,7 +419,7 @@ function () {
                             .fillColor(fillColorGradientColor)
                             .data(arrayOf(7.0, 6.9, 2.5, 14.5, 18.2, 21.5, 5.2, 26.5, 23.3, 45.3, 13.9, 9.6))
                     ))
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.plotOptions?.areaspline
                 ?.dataLabels(AADataLabels()
                              .enabled(true)
@@ -500,7 +500,7 @@ function () {
                         ))
 
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             val aaPlotBandsElementArr = arrayOf(
                 AAPlotBandsElement()
                     .from(-0.25f)//值域颜色带X轴起始值
@@ -819,7 +819,7 @@ function () {
                             .name("湿度")
                             .data(arrayOf(44.0999, 44.8880, 44.7770, 43.0066, 43.6660, 43.5550)
                             )))
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.plotOptions?.line?.dataLabels?.format =
                 "{point.y:.4f} ℃" //保留 Y 轴值的小数点后 4 位
             return aaOptions
@@ -1107,7 +1107,7 @@ function () {
                 .markerRadius(0f)
                 .series(arrayOf(element1, element2, element3, element4))
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip!!
                 .shared(true)
                 .useHTML(true)

+ 11 - 11
sample/src/main/java/com/github/aachartmodel/aainfographics/demo/chartcomposer/CustomTooltipComposer.kt

@@ -95,7 +95,7 @@ function () {
                 .style(AAStyle()
                         .color("#FFD700")
                         .fontSize(12f))
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip(aaTooltip)
             return aaOptions
         }
@@ -137,7 +137,7 @@ function () {
     }
              """.trimIndent()
                 )
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip = aaTooltip
             return aaOptions
         }
@@ -187,7 +187,7 @@ function () {
     }
                 """.trimIndent()
                 )
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip = aaTooltip
             return aaOptions
         }
@@ -247,7 +247,7 @@ function () {
                 )
                 .backgroundColor("#050505")
                 .borderColor("#050505")
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip = aaTooltip
             return aaOptions
         }
@@ -291,7 +291,7 @@ function () {
                     .color("#1e90ff")
                     .fontSize(12f)
                 )
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip = aaTooltip
             return aaOptions
         }
@@ -332,7 +332,7 @@ function () {
                 """.trimIndent()
                 )
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.yAxis?.labels(aaYAxisLabels)
 
             return aaOptions
@@ -377,7 +377,7 @@ function () {
                 """.trimIndent()
                 )
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.yAxis!!
                 .opposite(true)
                 .tickWidth(2f)
@@ -420,7 +420,7 @@ function () {
                 )
 
             /*Custom Tooltip Style --- 自定义图表浮动提示框样式及内容*/
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip
                 ?.shared(false)
                 ?.formatter("""
@@ -581,7 +581,7 @@ function () {
                         )
                         ))
                 )
-             val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+             val aaOptions = aaChartModel.aa_toAAOptions()
 
              aaOptions.tooltip!!
                  .useHTML(true)
@@ -649,7 +649,7 @@ function () {
                         .name("Berlin")
                         .data(arrayOf(3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8))
                 ))
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip
                 ?.useHTML(true)
                 ?.formatter(tooltipFormatter)
@@ -745,7 +745,7 @@ function () {
         }
             """.trimIndent()
 
-            val aaOptions = AAOptionsConstructor.configureChartOptions(aaChartModel)
+            val aaOptions = aaChartModel.aa_toAAOptions()
             aaOptions.tooltip!!
                 //‼️以 this.point.index 这种方式获取选中的点的索引必须设置 tooltip 的 shared 为 false
                 //‼️共享时是 this.points (由多个 point 组成的 points 数组)