| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- export function createReferenceClass(options) {
- let x, y;
- let referenceClassGroup;
- let textGroup;
- let labels;
- let lang;
- let colours;
- let font;
- function referenceClass(selection) {
- referenceClassGroup = selection
- .append('g')
- .attr('transform', 'translate(' + x + ',' + y + ')')
- .attr('class', 'reference-class');
- referenceClassGroup
- .append('rect')
- .attr('class', 'reference-class-background')
- .attr('transform', 'translate(' + (-5 * font.ratio.large) + ', ' + (-15 * font.ratio.large) + ')')
- .attr('width', font.ratio.large * 10.5 + 'em')
- .attr('height', 2 * font.ratio.large + 'em')
- .attr('fill', colours.bright);
- textGroup = referenceClassGroup.append('text');
- // referenceClassGroup
- textGroup
- .attr('fill', colours.text);
- textGroup.append('tspan')
- .attr('attr', 'reference-class-size')
- .attr('font-size', font.ratio.large + 'em')
- .text(labels.per[lang] + String.fromCharCode(options.common.spaceFormat) + labels.referenceGroup.size);
- }
- referenceClass.x = function(val) {
- if(!arguments.length) {
- return x;
- }
- x = val;
- return referenceClass;
- };
- referenceClass.font = function(val) {
- if(!arguments.length) {
- return font;
- }
- font = val;
- return referenceClass;
- };
- referenceClass.y = function(val) {
- if(!arguments.length) {
- return y;
- }
- y = val;
- return referenceClass;
- };
- referenceClass.labels = function(val) {
- if(!arguments.length) {
- return labels;
- }
- labels = val;
- return referenceClass;
- };
- referenceClass.lang = function(val) {
- if(!arguments.length) {
- return lang;
- }
- lang = val;
- return referenceClass;
- };
- referenceClass.colours = function(val) {
- if(!arguments.length) {
- return colours;
- }
- colours = val;
- return referenceClass;
- };
- referenceClass.colours(options.common.colours);
- referenceClass.labels(options.common.labels);
- referenceClass.lang(options.common.lang);
- referenceClass.font(options.common.font);
- referenceClass.x(options.x);
- referenceClass.y(options.y);
- return referenceClass;
- }
|