[heatmap] fix start, end render extrapolation
This commit is contained in:
parent
eb3041ae4f
commit
620382a431
15
dist/frappe-charts.esm.js
vendored
15
dist/frappe-charts.esm.js
vendored
@ -282,10 +282,6 @@ class SvgTip {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the value of a number upto 2 decimal places.
|
|
||||||
* @param {Number} d Any number
|
|
||||||
*/
|
|
||||||
function floatTwo(d) {
|
function floatTwo(d) {
|
||||||
return parseFloat(d.toFixed(2));
|
return parseFloat(d.toFixed(2));
|
||||||
}
|
}
|
||||||
@ -2687,7 +2683,7 @@ class Heatmap extends BaseChart {
|
|||||||
s.start = clone(this.data.start);
|
s.start = clone(this.data.start);
|
||||||
s.end = clone(this.data.end);
|
s.end = clone(this.data.end);
|
||||||
|
|
||||||
s.firstWeekStart = setDayToSunday(s.start);
|
s.firstWeekStart = clone(s.start);
|
||||||
s.noOfWeeks = getWeeksBetween(s.start, s.end);
|
s.noOfWeeks = getWeeksBetween(s.start, s.end);
|
||||||
s.distribution = calcDistribution(
|
s.distribution = calcDistribution(
|
||||||
Object.values(this.data.dataPoints), HEATMAP_DISTRIBUTION_SIZE);
|
Object.values(this.data.dataPoints), HEATMAP_DISTRIBUTION_SIZE);
|
||||||
@ -2866,13 +2862,19 @@ class Heatmap extends BaseChart {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getCol(startDate, month, empty = false) {
|
getCol(startDate, month, empty = false) {
|
||||||
|
let s = this.state;
|
||||||
|
|
||||||
// startDate is the start of week
|
// startDate is the start of week
|
||||||
let currentDate = clone(startDate);
|
let currentDate = clone(startDate);
|
||||||
let col = [];
|
let col = [];
|
||||||
|
|
||||||
for(var i = 0; i < NO_OF_DAYS_IN_WEEK; i++, addDays(currentDate, 1)) {
|
for(var i = 0; i < NO_OF_DAYS_IN_WEEK; i++, addDays(currentDate, 1)) {
|
||||||
let config = {};
|
let config = {};
|
||||||
if(empty || currentDate.getMonth() !== month) {
|
|
||||||
|
// Non-generic adjustment for entire heatmap, needs state
|
||||||
|
let currentDateWithinData = currentDate >= s.start && currentDate <= s.end;
|
||||||
|
|
||||||
|
if(empty || currentDate.getMonth() !== month || !currentDateWithinData) {
|
||||||
config.yyyyMmDd = getYyyyMmDd(currentDate);
|
config.yyyyMmDd = getYyyyMmDd(currentDate);
|
||||||
} else {
|
} else {
|
||||||
config = this.getSubDomainConfig(currentDate);
|
config = this.getSubDomainConfig(currentDate);
|
||||||
@ -3577,7 +3579,6 @@ class AxisChart extends BaseChart {
|
|||||||
// removeDataPoint(index = 0) {}
|
// removeDataPoint(index = 0) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
// import MultiAxisChart from './charts/MultiAxisChart';
|
|
||||||
const chartTypes = {
|
const chartTypes = {
|
||||||
// multiaxis: MultiAxisChart,
|
// multiaxis: MultiAxisChart,
|
||||||
percentage: PercentageChart,
|
percentage: PercentageChart,
|
||||||
|
|||||||
2
dist/frappe-charts.min.cjs.js
vendored
2
dist/frappe-charts.min.cjs.js
vendored
File diff suppressed because one or more lines are too long
2
dist/frappe-charts.min.esm.js
vendored
2
dist/frappe-charts.min.esm.js
vendored
File diff suppressed because one or more lines are too long
2
dist/frappe-charts.min.iife.js
vendored
2
dist/frappe-charts.min.iife.js
vendored
File diff suppressed because one or more lines are too long
2
dist/frappe-charts.min.iife.js.map
vendored
2
dist/frappe-charts.min.iife.js.map
vendored
File diff suppressed because one or more lines are too long
@ -177,7 +177,7 @@ export const moonData = {
|
|||||||
|
|
||||||
let today = new Date();
|
let today = new Date();
|
||||||
let start = clone(today);
|
let start = clone(today);
|
||||||
addDays(start, 5);
|
addDays(start, 4);
|
||||||
let end = clone(start);
|
let end = clone(start);
|
||||||
start.setFullYear( start.getFullYear() - 2 );
|
start.setFullYear( start.getFullYear() - 2 );
|
||||||
end.setFullYear( end.getFullYear() - 1 );
|
end.setFullYear( end.getFullYear() - 1 );
|
||||||
|
|||||||
2
docs/assets/js/frappe-charts.min.js
vendored
2
docs/assets/js/frappe-charts.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
docs/assets/js/index.min.js
vendored
2
docs/assets/js/index.min.js
vendored
@ -272,7 +272,7 @@ var moonData = {
|
|||||||
|
|
||||||
var today = new Date();
|
var today = new Date();
|
||||||
var start = clone(today);
|
var start = clone(today);
|
||||||
addDays(start, 5);
|
addDays(start, 4);
|
||||||
var end = clone(start);
|
var end = clone(start);
|
||||||
start.setFullYear(start.getFullYear() - 2);
|
start.setFullYear(start.getFullYear() - 2);
|
||||||
end.setFullYear(end.getFullYear() - 1);
|
end.setFullYear(end.getFullYear() - 1);
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -71,7 +71,7 @@ export default class Heatmap extends BaseChart {
|
|||||||
s.start = clone(this.data.start);
|
s.start = clone(this.data.start);
|
||||||
s.end = clone(this.data.end);
|
s.end = clone(this.data.end);
|
||||||
|
|
||||||
s.firstWeekStart = setDayToSunday(s.start);
|
s.firstWeekStart = clone(s.start);
|
||||||
s.noOfWeeks = getWeeksBetween(s.start, s.end);
|
s.noOfWeeks = getWeeksBetween(s.start, s.end);
|
||||||
s.distribution = calcDistribution(
|
s.distribution = calcDistribution(
|
||||||
Object.values(this.data.dataPoints), HEATMAP_DISTRIBUTION_SIZE);
|
Object.values(this.data.dataPoints), HEATMAP_DISTRIBUTION_SIZE);
|
||||||
@ -250,13 +250,19 @@ export default class Heatmap extends BaseChart {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getCol(startDate, month, empty = false) {
|
getCol(startDate, month, empty = false) {
|
||||||
|
let s = this.state;
|
||||||
|
|
||||||
// startDate is the start of week
|
// startDate is the start of week
|
||||||
let currentDate = clone(startDate);
|
let currentDate = clone(startDate);
|
||||||
let col = [];
|
let col = [];
|
||||||
|
|
||||||
for(var i = 0; i < NO_OF_DAYS_IN_WEEK; i++, addDays(currentDate, 1)) {
|
for(var i = 0; i < NO_OF_DAYS_IN_WEEK; i++, addDays(currentDate, 1)) {
|
||||||
let config = {};
|
let config = {};
|
||||||
if(empty || currentDate.getMonth() !== month) {
|
|
||||||
|
// Non-generic adjustment for entire heatmap, needs state
|
||||||
|
let currentDateWithinData = currentDate >= s.start && currentDate <= s.end;
|
||||||
|
|
||||||
|
if(empty || currentDate.getMonth() !== month || !currentDateWithinData) {
|
||||||
config.yyyyMmDd = getYyyyMmDd(currentDate);
|
config.yyyyMmDd = getYyyyMmDd(currentDate);
|
||||||
} else {
|
} else {
|
||||||
config = this.getSubDomainConfig(currentDate);
|
config = this.getSubDomainConfig(currentDate);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user