Per Peter/ Ryan discussion (record of notes for followup).
There are situations where a dataset might be fed to the client with pvalues outside the range allowed for floats. This includes analysis packages that give pvalues = 0 (eg BoltLMM), as well as client-side parsing of user-provided data (with pvalues).
If LocusZoom is asked to represent these values, the result (-log(10) = Infinity) causes no data to be displayed- see screenshot of a region with 2500 data points available. The default behavior should be to represent the point in a way that does not cause important associations to be dropped. One option would be to automatically detect infinity values, and render this as a discontinuous axis scale.
Purpose
Per Peter/ Ryan discussion (record of notes for followup).
There are situations where a dataset might be fed to the client with pvalues outside the range allowed for floats. This includes analysis packages that give pvalues = 0 (eg BoltLMM), as well as client-side parsing of user-provided data (with pvalues).
If LocusZoom is asked to represent these values, the result (-log(10) = Infinity) causes no data to be displayed- see screenshot of a region with 2500 data points available. The default behavior should be to represent the point in a way that does not cause important associations to be dropped. One option would be to automatically detect infinity values, and render this as a discontinuous axis scale.
For client side parsing, Ryan suggests an analogue of this function: https://github.com/statgen/locuszoom-db/blob/master/locuszoom/db/loaders.py#L80-L108