Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork7.9k
Added a test to default the value of Fs to 2 for Axes.specgram and ml…#12813
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
…ab.specgram to match docstring and mlab._spectral_helper() default value
timhoffm left a comment• edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Thanks for the contribution.
While there seems to be a bit of discussion about the right way to handle this (c.f.#9100 (comment) vs.#9221 (comment)), the proposed solution in_axes.py
fixes bug#9100 and should be merged as an improvement. Everything else can be discussed and handled separately.
@@ -1113,6 +1113,8 @@ def specgram(x, NFFT=None, Fs=None, detrend=None, window=None, | |||
noverlap = 128 # default in _spectral_helper() is noverlap = 0 | |||
if NFFT is None: | |||
NFFT = 256 # same default as in _spectral_helper() | |||
if Fs is None: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Fs
is only passed through in this function. It's not used explicitly. Therefore, there is no need to set the default explicitly again here; and I thus prefer to not duplicate the default. It's different withNFFT
because its value is used in the warning.
@@ -7629,6 +7629,8 @@ def specgram(self, x, NFFT=None, Fs=None, Fc=None, detrend=None, | |||
Fc = 0 # same default as in mlab._spectral_helper() | |||
if noverlap is None: | |||
noverlap = 128 # same default as in mlab.specgram() | |||
if Fs is None: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
As discussed in#9221 (comment), I think thatFs
should remain None, and the underlying function made to do the right thing withNone
. This function should not be calculating frequencies, but should just take them from the frequency output of the spectral helper.
Sorry to be a pain, but I'm going to block on this. If you need more details to modify the PR, I will try and take a look later today.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Then I'll try to change the PR so as to modify the docstring so that it matches the fact that the default value is None. I will try to do this asap.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Well, I think there is a problem with the code as well, but I don't think settingFs=2
is the solution. We should be making toFs
from thefreqs
array where it is needed in the code (Fs=freqs[-1] * 2
)
ie |
The docstring is in fact accurate as _spectral_helper already modifies the default value of Fs to be 2. It could be argued that is would be cleaner to simply have Fs=2 when declaring the functions but it is unnecessary. This PR is thus not useful. jklymak does seem to raise a valid point but it is another matter. |
Uh oh!
There was an error while loading.Please reload this page.
…ab.specgram to match docstring and mlab._spectral_helper() default value.
Addresses issue#9100
PR Summary
PR Checklist