- 22 Apr, 2014 1 commit
-
-
Mike Bostock authored
-
- 13 Apr, 2014 4 commits
-
-
Mike Bostock authored
-
Mike Bostock authored
-
Mike Bostock authored
-
Mike Bostock authored
-
- 11 Apr, 2014 1 commit
-
-
Jason Davies authored
Originally we were using Welford’s algorithm, but this is primarily useful when computing the variance in a numerically stable manner, since Welford’s approach requires an incremental mean. I’ve removed a test for the mean of more than one instance of Number.MAX_VALUE as this is unlikely to occur in practice; most likely this was the reason I used Welford’s algorithm in the first place. There’s a paper [1] comparing various algorithms for computing the mean, and Welford’s is actually slightly less accurate than the naïve approach. There are some more accurate approaches but I think it’s overkill for d3.mean. [1] Youngs, Edward A., and Elliot M. Cramer. "Some results relevant to choice of sum and sum-of-product algorithms." Technometrics 13.3 (1971): 657-665. Related: #1842.
-
- 10 Apr, 2014 2 commits
-
-
Mike Bostock authored
-
Jason Davies authored
-
- 08 Apr, 2014 3 commits
-
-
Mike Bostock authored
-
Mike Bostock authored
-
Mike Bostock authored
-
- 06 Apr, 2014 4 commits
-
-
Mike Bostock authored
-
Mike Bostock authored
-
Mike Bostock authored
If there are a lot of matching numbers, it’s faster to do direct string equality comparisons than it is to coerce to a number and compare numerically.
-
Mike Bostock authored
-
- 04 Apr, 2014 1 commit
-
-
Jason Davies authored
Fixes #1823; spurious closePath events were being generated for degenerate polygons due to generation of empty polygons and rings in rare cases.
-
- 24 Mar, 2014 23 commits
-
-
Mike Bostock authored
-
Mike Bostock authored
I’m not entirely sure this is the most useful behavior, but since typeof null is "object" and +null is 0, interpolating to null is equivalent to interpolating to the number zero.
-
Mike Bostock authored
-
Mike Bostock authored
Fixes #1748.
-
Mike Bostock authored
Fixes #1773.
-
Mike Bostock authored
The point of this method is to pick the right precision for you!
-
Mike Bostock authored
Rather than overload the meaning of precision to bias the selection of the SI prefix, always use the standard SI prefix, and use the precision in the same sense as with fixed digits: the number of digits after the decimal point.
-
Mike Bostock authored
For reasons that I can’t recall, the SI-prefix behavior was different for small numbers (between -1 and 1) than it was for large numbers. This commit enforces consistent behavior, so that the coefficient is always in the range [1, 1000), like in engineering notation. For example, the old d3.format("s") would display 0.01 as "0.01", whereas the new behavior displays it as "10m".
-
Mike Bostock authored
When a SI-prefix format (type "s") is passed to scale.tickFormat, compute a suitable SI-prefix based on the maximum value in the range, and then use that prefix for all ticks rather than computing the SI-prefix on a per-tick basis.
-
Mike Bostock authored
Fixes #1717. Turns out, -1 % 1 is 0!
-
Mike Bostock authored
This ensures that if the touch target is removed from the DOM during a zoom gesture, the zoom behavior continues to receive events; touch events, unlike other events, are always dispatched to the target of the touchstart event rather than the window.
-
Mike Bostock authored
Rather than starting the ticks on the minimum domain value, round up based on the step size. Fixes #1757.
-
Darrick Brown authored
100% to 125% faster #rgb/#rrggbb string parsing across all platforms. Tests pass. http://jsperf.com/rgb-str-vs-regex
-
Timmy Willison authored
-
Timmy Willison authored
-
Mike Bostock authored
The Lambert conic conformal projection extends to infinity along the outer edge of the projection, and thus the latitude must be clamped either at -π/2 or +π/2 depending on the parallels. Fixes #1802.
-
Mike Bostock authored
This was fixed in 2010, so I think it’s safe to remove the workaround now.
-
Mike Bostock authored
This way, it’s easier to tell whether the touch changed during the event. This also fixes #1600 because the drag behavior now only dispatches a drag event on elements that moved, even if multiple touches are active.
-
Mike Bostock authored
The drag behavior no longer crashes when the element being dragged is removed from the DOM. In addition, the new d3.touch method extracts a single identified touch from the current touch event, making it more efficient during multitouch. The drag behavior now assigns touchmove and touchend listeners on the target element of the touchstart event, rather than the window.
-
Mike Bostock authored
The drag behavior registers a touchend listener for each started touch; however, a touchend event is dispatched to ALL listeners when any touch ends, not just for the corresponding starting touch. The drag behavior must therefore detect whenever the ending touch is the corresponding starting touch, and ignore other ending touches. This fixes the drag behavior during multitouch, as discussed in #1786.
-
Mike Bostock authored
Objects that are coercible to numbers, such as Dates, are often more usefully interpolated as numbers rather than as objects.
-
Mike Bostock authored
For backwards-compatibility, bisector checks the arity of the specified function, and if the function only takes a single argument, it is wrapped with a suitable comparator.
-
Mike Bostock authored
Fixes #1766. Unlike d3.bisector(accessor), this allows you to define a bisector that works in reverse order. An awkward aspect of implementing bisection on top of a comparator is that it is often the case that the sorted array contains objects (e.g., rows from a TSV), while the search value is a primitive value (e.g., a number). Thus, you want to apply an accessor to the array elements but not to the search value. The solution here is to invoke the comparator deterministically: the first argument is always an element from the array, and the second argument is always the search value. This lets a comparator apply an accessor to array elements but not to search values.
-
- 23 Mar, 2014 1 commit
-
-
Mike Bostock authored
Add ca-ES for localization
-