From cbace9162600a2840aae42f76dd3bf53dec1796d Mon Sep 17 00:00:00 2001 From: imaNNeoFighT Date: Thu, 3 Oct 2019 14:41:37 +0330 Subject: [PATCH] added interval field in the SideTitles class, fixed issue #67 --- lib/src/chart/bar_chart/bar_chart_painter.dart | 4 ++-- lib/src/chart/base/base_chart/base_chart_data.dart | 3 +++ lib/src/chart/line_chart/line_chart_painter.dart | 8 ++++---- repo_files/documentations/base_chart.md | 1 + 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/src/chart/bar_chart/bar_chart_painter.dart b/lib/src/chart/bar_chart/bar_chart_painter.dart index 459bc892b..365ca86ad 100644 --- a/lib/src/chart/bar_chart/bar_chart_painter.dart +++ b/lib/src/chart/bar_chart/bar_chart_painter.dart @@ -243,7 +243,7 @@ class BarChartPainter extends AxisChartPainter { final leftTitles = data.titlesData.leftTitles; if (leftTitles.showTitles) { int verticalCounter = 0; - while (data.gridData.verticalInterval * verticalCounter <= data.maxY) { + while (leftTitles.interval * verticalCounter <= data.maxY) { double x = 0 + getLeftOffsetDrawSize(); double y = getPixelY( data.gridData.verticalInterval * verticalCounter, drawSize) + @@ -270,7 +270,7 @@ class BarChartPainter extends AxisChartPainter { final rightTitles = data.titlesData.rightTitles; if (rightTitles.showTitles) { int verticalCounter = 0; - while (data.gridData.verticalInterval * verticalCounter <= data.maxY) { + while (rightTitles.interval * verticalCounter <= data.maxY) { double x = drawSize.width + getLeftOffsetDrawSize(); double y = getPixelY( data.gridData.verticalInterval * verticalCounter, drawSize) + diff --git a/lib/src/chart/base/base_chart/base_chart_data.dart b/lib/src/chart/base/base_chart/base_chart_data.dart index 71e82e121..efc54f87e 100644 --- a/lib/src/chart/base/base_chart/base_chart_data.dart +++ b/lib/src/chart/base/base_chart/base_chart_data.dart @@ -124,6 +124,7 @@ class SideTitles { final double reservedSize; final TextStyle textStyle; final double margin; + final double interval; const SideTitles({ this.showTitles = false, @@ -134,6 +135,7 @@ class SideTitles { fontSize: 11, ), this.margin = 6, + this.interval = 1.0, }); static SideTitles lerp(SideTitles a, SideTitles b, double t) { @@ -143,6 +145,7 @@ class SideTitles { reservedSize: lerpDouble(a.reservedSize, b.reservedSize, t), textStyle: TextStyle.lerp(a.textStyle, b.textStyle, t), margin: lerpDouble(a.margin, b.margin, t), + interval: lerpDouble(a.interval, b.interval, t), ); } } diff --git a/lib/src/chart/line_chart/line_chart_painter.dart b/lib/src/chart/line_chart/line_chart_painter.dart index 62739ccba..3bfb2e3f4 100644 --- a/lib/src/chart/line_chart/line_chart_painter.dart +++ b/lib/src/chart/line_chart/line_chart_painter.dart @@ -481,7 +481,7 @@ class LineChartPainter extends AxisChartPainter { y -= tp.height / 2; tp.paint(canvas, Offset(x, y)); - verticalSeek += data.gridData.verticalInterval; + verticalSeek += leftTitles.interval; } } @@ -507,7 +507,7 @@ class LineChartPainter extends AxisChartPainter { tp.paint(canvas, Offset(x, y)); - horizontalSeek += data.gridData.horizontalInterval; + horizontalSeek += topTitles.interval; } } @@ -532,7 +532,7 @@ class LineChartPainter extends AxisChartPainter { y -= tp.height / 2; tp.paint(canvas, Offset(x, y)); - verticalSeek += data.gridData.verticalInterval; + verticalSeek += rightTitles.interval; } } @@ -558,7 +558,7 @@ class LineChartPainter extends AxisChartPainter { tp.paint(canvas, Offset(x, y)); - horizontalSeek += data.gridData.horizontalInterval; + horizontalSeek += bottomTitles.interval; } } } diff --git a/repo_files/documentations/base_chart.md b/repo_files/documentations/base_chart.md index 3c56c4885..b9426f8f4 100644 --- a/repo_files/documentations/base_chart.md +++ b/repo_files/documentations/base_chart.md @@ -29,6 +29,7 @@ |reservedSize| a reserved space to show titles|22| |textStyle| [TextStyle](https://api.flutter.dev/flutter/painting/TextStyle-class.html) to determine the style of texts |TextStyle(color: Colors.black, fontSize: 11)| |margin| margin of horizontal the titles | 6| +|interval| interval between of showing titles in this side, | 1.0 |