Skip to content
Snippets Groups Projects
Commit a4376b52 authored by Benoît Harrault's avatar Benoît Harrault
Browse files

Merge branch '58-swap-vertical-titles-in-main-timeline-chart' into 'master'

Resolve "Swap vertical titles in main timeline chart"

Closes #58

See merge request !53
parents 7fd165e0 1bce7da2
No related branches found
No related tags found
1 merge request!53Resolve "Swap vertical titles in main timeline chart"
Pipeline #4783 passed
org.gradle.jvmargs=-Xmx1536M org.gradle.jvmargs=-Xmx1536M
android.useAndroidX=true android.useAndroidX=true
android.enableJetifier=true android.enableJetifier=true
app.versionName=0.0.50 app.versionName=0.0.51
app.versionCode=50 app.versionCode=51
Improve vertical axis legends.
Amélioration des axes verticaux des graphiques.
...@@ -89,47 +89,15 @@ class CustomBarChart extends CustomChart { ...@@ -89,47 +89,15 @@ class CustomBarChart extends CustomChart {
); );
} }
FlTitlesData getTitlesData() { Widget getHorizontalTitlesWidget(double value, TitleMeta meta) {
const AxisTitles none = const AxisTitles( return getHorizontalTitlesWidgetWithDate(value, meta);
sideTitles: SideTitles(showTitles: false), }
);
final AxisTitles verticalTitles = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalTitlesWidget,
interval: this.verticalTicksInterval,
),
);
final AxisTitles verticalSpacer = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalTitlesSpacerWidget,
interval: this.verticalTicksInterval,
),
);
final AxisTitles horizontalTitles = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 20,
getTitlesWidget: getHorizontalTitlesWidget,
),
);
return FlTitlesData( Widget getVerticalLeftTitlesWidget(double value, TitleMeta meta) {
show: true, return getVerticalTitlesWidgetWithValue(value, meta);
bottomTitles: horizontalTitles,
leftTitles: verticalTitles,
topTitles: none,
rightTitles: verticalSpacer,
);
} }
Widget getHorizontalTitlesWidget(double value, TitleMeta meta) { Widget getVerticalRightTitlesWidget(double value, TitleMeta meta) {
return getHorizontalTitlesWidgetWithDate(value, meta); return getVerticalTitlesWidgetWithValue(value, meta);
} }
} }
...@@ -95,8 +95,42 @@ class CustomChart extends StatelessWidget { ...@@ -95,8 +95,42 @@ class CustomChart extends StatelessWidget {
} }
FlTitlesData getTitlesData() { FlTitlesData getTitlesData() {
const AxisTitles none = const AxisTitles(
sideTitles: SideTitles(showTitles: false),
);
final AxisTitles verticalTitlesLeft = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalLeftTitlesWidget,
interval: this.verticalTicksInterval,
),
);
final AxisTitles verticalTitleRight = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalRightTitlesWidget,
interval: this.verticalTicksInterval,
),
);
final AxisTitles horizontalTitles = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 20,
getTitlesWidget: getHorizontalTitlesWidget,
),
);
return FlTitlesData( return FlTitlesData(
show: false, show: true,
bottomTitles: horizontalTitles,
leftTitles: verticalTitlesLeft,
topTitles: none,
rightTitles: verticalTitleRight,
); );
} }
...@@ -104,6 +138,14 @@ class CustomChart extends StatelessWidget { ...@@ -104,6 +138,14 @@ class CustomChart extends StatelessWidget {
return Text(''); return Text('');
} }
Widget getVerticalLeftTitlesWidget(double value, TitleMeta meta) {
return Text('');
}
Widget getVerticalRightTitlesWidget(double value, TitleMeta meta) {
return Text('');
}
Widget getHorizontalTitlesWidgetWithDate(double value, TitleMeta meta) { Widget getHorizontalTitlesWidgetWithDate(double value, TitleMeta meta) {
final DateFormat formatter = DateFormat('dd/MM'); final DateFormat formatter = DateFormat('dd/MM');
...@@ -173,7 +215,7 @@ class CustomChart extends StatelessWidget { ...@@ -173,7 +215,7 @@ class CustomChart extends StatelessWidget {
); );
} }
Widget getVerticalTitlesWidget(double value, TitleMeta meta) { Widget getVerticalTitlesWidgetWithValue(double value, TitleMeta meta) {
String suffix = String suffix =
this.verticalAxisTitleSuffix != '' ? ' ' + this.verticalAxisTitleSuffix : ''; this.verticalAxisTitleSuffix != '' ? ' ' + this.verticalAxisTitleSuffix : '';
......
...@@ -34,42 +34,11 @@ class CustomLineChart extends CustomChart { ...@@ -34,42 +34,11 @@ class CustomLineChart extends CustomChart {
}; };
} }
FlTitlesData getTitlesData() { Widget getVerticalLeftTitlesWidget(double value, TitleMeta meta) {
const AxisTitles none = const AxisTitles( return getVerticalTitlesWidgetWithValue(value, meta);
sideTitles: SideTitles(showTitles: false), }
);
final AxisTitles verticalTitles = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalTitlesWidget,
interval: this.verticalTicksInterval,
),
);
final AxisTitles verticalSpacer = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 35,
getTitlesWidget: getVerticalTitlesSpacerWidget,
),
);
final AxisTitles horizontalTitles = AxisTitles(
sideTitles: SideTitles(
showTitles: true,
reservedSize: 20,
getTitlesWidget: getHorizontalTitlesWidget,
),
);
return FlTitlesData( Widget getVerticalRightTitlesWidget(double value, TitleMeta meta) {
show: true, return getVerticalTitlesWidgetWithValue(value, meta);
bottomTitles: horizontalTitles,
leftTitles: verticalSpacer,
topTitles: none,
rightTitles: verticalTitles,
);
} }
} }
...@@ -92,7 +92,7 @@ class ChartHeatmap extends CustomChart { ...@@ -92,7 +92,7 @@ class ChartHeatmap extends CustomChart {
sideTitles: SideTitles( sideTitles: SideTitles(
showTitles: true, showTitles: true,
reservedSize: 40, reservedSize: 40,
getTitlesWidget: getVerticalTitlesWidget, getTitlesWidget: getVerticalTitlesWidgetWithValue,
interval: 1, interval: 1,
), ),
); );
...@@ -115,7 +115,7 @@ class ChartHeatmap extends CustomChart { ...@@ -115,7 +115,7 @@ class ChartHeatmap extends CustomChart {
); );
} }
Widget getVerticalTitlesWidget(double value, TitleMeta meta) { Widget getVerticalTitlesWidgetWithValue(double value, TitleMeta meta) {
final String dayShortName = getDayShortName(8 - value.toInt()); final String dayShortName = getDayShortName(8 - value.toInt());
return SideTitleWidget( return SideTitleWidget(
......
...@@ -74,4 +74,8 @@ class ChartTimelineCounts extends CustomBarChart { ...@@ -74,4 +74,8 @@ class ChartTimelineCounts extends CustomBarChart {
return data; return data;
} }
Widget getVerticalLeftTitlesWidget(double value, TitleMeta meta) {
return getVerticalTitlesSpacerWidget(value, meta);
}
} }
...@@ -72,4 +72,8 @@ class ChartTimelineEclecticism extends CustomLineChart { ...@@ -72,4 +72,8 @@ class ChartTimelineEclecticism extends CustomLineChart {
), ),
]; ];
} }
Widget getVerticalRightTitlesWidget(double value, TitleMeta meta) {
return getVerticalTitlesSpacerWidget(value, meta);
}
} }
...@@ -11,6 +11,7 @@ class ChartTopArtistsStream extends CustomLineChart { ...@@ -11,6 +11,7 @@ class ChartTopArtistsStream extends CustomLineChart {
const ChartTopArtistsStream({super.key, required this.chartData}); const ChartTopArtistsStream({super.key, required this.chartData});
final double verticalTicksInterval = 10; final double verticalTicksInterval = 10;
final String verticalAxisTitleSuffix = '%';
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
......
...@@ -3,7 +3,7 @@ description: Display scrobbles data and charts ...@@ -3,7 +3,7 @@ description: Display scrobbles data and charts
publish_to: 'none' publish_to: 'none'
version: 0.0.50+50 version: 0.0.51+51
environment: environment:
sdk: '^3.0.0' sdk: '^3.0.0'
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment