A more flexible year axis
This commit is contained in:
parent
e8f102c6f1
commit
517763489c
30
index.html
30
index.html
@ -234,23 +234,35 @@ h1{
|
|||||||
return '<div class="event" style="margin-left: ' + offset.toFixed(2) + 'px"><div class="time" style="width: ' + width.toFixed(2) + 'px"></div><b>' + d.time.title + '</b> ' + d.text + ' </div>';
|
return '<div class="event" style="margin-left: ' + offset.toFixed(2) + 'px"><div class="time" style="width: ' + width.toFixed(2) + 'px"></div><b>' + d.time.title + '</b> ' + d.text + ' </div>';
|
||||||
return '';
|
return '';
|
||||||
},
|
},
|
||||||
render: function(title, data){
|
renderYears: function(firstYear, lastYear){
|
||||||
document.title = title;
|
|
||||||
life.$title.innerHTML = title;
|
|
||||||
|
|
||||||
var firstYear = life.firstYear = data[0].time.startYear;
|
|
||||||
var nowYear = new Date().getFullYear();
|
|
||||||
var dayLength = life.yearLength/12/30;
|
var dayLength = life.yearLength/12/30;
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
var days = 0;
|
var days = 0;
|
||||||
|
for (var y=firstYear, age = 0; y<=lastYear+1; y++, age++){
|
||||||
for (var y=firstYear, age = 0; y<=nowYear+1; y++, age++){
|
|
||||||
html += '<section class="year" style="left: ' + (days*dayLength).toFixed(2) + 'px">' +
|
html += '<section class="year" style="left: ' + (days*dayLength).toFixed(2) + 'px">' +
|
||||||
y + ' (' + age + ')' +
|
y + ' (' + age + ')' +
|
||||||
'</section>';
|
'</section>';
|
||||||
days += (y % 4 == 0) ? 366 : 365;
|
days += (y % 4 == 0) ? 366 : 365;
|
||||||
}
|
}
|
||||||
|
return html;
|
||||||
|
},
|
||||||
|
render: function(title, data){
|
||||||
|
document.title = title;
|
||||||
|
life.$title.innerHTML = title;
|
||||||
|
|
||||||
|
// Get the first and last year for the year axis
|
||||||
|
var firstYear = new Date().getFullYear();
|
||||||
|
var lastYear = firstYear;
|
||||||
|
data.forEach(function(d){
|
||||||
|
var time = d.time;
|
||||||
|
var startYear = time.startYear;
|
||||||
|
var endYear = time.endYear;
|
||||||
|
if (startYear && startYear < firstYear) firstYear = startYear;
|
||||||
|
if (endYear && endYear > lastYear) lastYear = endYear;
|
||||||
|
});
|
||||||
|
life.firstYear = firstYear;
|
||||||
|
|
||||||
|
html = life.renderYears(firstYear, lastYear);
|
||||||
data.forEach(function(d){
|
data.forEach(function(d){
|
||||||
html += life.renderEvent(d);
|
html += life.renderEvent(d);
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user