const calendarData = {
year: 2022, // (optional) Defaults to current year
colors: { // (optional) Defaults to green
blue: ["#8cb9ff","#69a3ff","#428bff","#1872ff","#0058e2"], // first entry is considered default if supplied
green: ["#c6e48b","#7bc96f","#49af5d","#2e8840","#196127"],
red: ["#ff9e82","#ff7b55","#ff4d1a","#e73400","#bd2a00"],
orange: ["#ffa244","#fd7f00","#dd6f00","#bf6000","#9b4e00"],
pink: ["#ff96cb","#ff70b8","#ff3a9d","#ee0077","#c30062"],
orangeToRed: ["#ffdf04","#ffbe04","#ff9a03","#ff6d02","#ff2c01"]
},
showCurrentDayBorder: true, // (optional) Defaults to true
defaultEntryIntensity: 4, // (optional) Defaults to 4
intensityScaleStart: 10, // (optional) Defaults to lowest value passe to entries.intensity
intensityScaleEnd: 100, // (optional) Defaults to highest value passe to entries.intensity
entries: [], // Populated in the DataviewJS loop below
}
//DataviewJS loop
for(let page of dv.pages('#morningEntry').where(p=> p["Wake Early"] === "🟩" || p["Wake Early"]==="🟨")){
console.log(page.file.name)
const extractedDateFromFile = page.file.name.split(" ")[0]
calendarData.entries.push({
date: extractedDateFromFile, // (required) Format YYYY-MM-DD
intensity: 100, // (required) the data you want to track, will map color intensities automatically
content: "", // (optional) Add text to the date cell
color: "orange", // (optional) Reference from *calendarData.colors*. If no color is supplied; colors[0] is used
})
}
console.log(calendarData)
/**
* param1 HTMLElement DOM reference for calendar rendering
* param2 CalendarData Calendar data object from above
*/
renderHeatmapCalendar(this.container, calendarData)
Appearance:
My Code: