(layout, d, i)
| 146 | } |
| 147 | |
| 148 | function model(layout, d, i) { |
| 149 | var cd0 = unwrap(d); |
| 150 | var trace = cd0.trace; |
| 151 | var lineColor = helpers.convertTypedArray(cd0.lineColor); |
| 152 | var line = trace.line; |
| 153 | var deselectedLines = { |
| 154 | color: rgba(trace.unselected.line.color), |
| 155 | opacity: trace.unselected.line.opacity |
| 156 | }; |
| 157 | var cOpts = Colorscale.extractOpts(line); |
| 158 | var cscale = cOpts.reversescale ? Colorscale.flipScale(cd0.cscale) : cd0.cscale; |
| 159 | var domain = trace.domain; |
| 160 | var dimensions = trace.dimensions; |
| 161 | var width = layout.width; |
| 162 | var labelAngle = trace.labelangle; |
| 163 | var labelSide = trace.labelside; |
| 164 | var labelFont = trace.labelfont; |
| 165 | var tickFont = trace.tickfont; |
| 166 | var rangeFont = trace.rangefont; |
| 167 | |
| 168 | var lines = Lib.extendDeepNoArrays({}, line, { |
| 169 | color: lineColor.map(d3.scale.linear().domain( |
| 170 | dimensionExtent({ |
| 171 | values: lineColor, |
| 172 | range: [cOpts.min, cOpts.max], |
| 173 | _length: trace._length |
| 174 | }) |
| 175 | )), |
| 176 | blockLineCount: c.blockLineCount, |
| 177 | canvasOverdrag: c.overdrag * c.canvasPixelRatio |
| 178 | }); |
| 179 | |
| 180 | var groupWidth = Math.floor(width * (domain.x[1] - domain.x[0])); |
| 181 | var groupHeight = Math.floor(layout.height * (domain.y[1] - domain.y[0])); |
| 182 | |
| 183 | var pad = layout.margin || {l: 80, r: 80, t: 100, b: 80}; |
| 184 | var rowContentWidth = groupWidth; |
| 185 | var rowHeight = groupHeight; |
| 186 | |
| 187 | return { |
| 188 | key: i, |
| 189 | colCount: dimensions.filter(helpers.isVisible).length, |
| 190 | dimensions: dimensions, |
| 191 | tickDistance: c.tickDistance, |
| 192 | unitToColor: unitToColorScale(cscale), |
| 193 | lines: lines, |
| 194 | deselectedLines: deselectedLines, |
| 195 | labelAngle: labelAngle, |
| 196 | labelSide: labelSide, |
| 197 | labelFont: labelFont, |
| 198 | tickFont: tickFont, |
| 199 | rangeFont: rangeFont, |
| 200 | layoutWidth: width, |
| 201 | layoutHeight: layout.height, |
| 202 | domain: domain, |
| 203 | translateX: domain.x[0] * width, |
| 204 | translateY: layout.height - domain.y[1] * layout.height, |
| 205 | pad: pad, |
nothing calls this directly
no test coverage detected
searching dependent graphs…