Add ability to specify random number generator for determenism #10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In my application I need the new colors chosen by
distinctipy
to be deterministic. To accomplish this I simply added a keyword argumentrng
(for random number generator) to the appropriate functions.In the default case when
rng=None
, the globalrandom._inst
random state is used. This means that this change is backwards compatible.More interestingly, the user can either pass an instance of
random.Random
if they have their own seeded random state, or if they pass a constant value a new random state is created and seeded with that value.This means I can do:
and that will return the same colors each time.