Skip to content
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Format (d) is incorrect in Numpy array viewer #22629

Open
10 tasks done
PhilipYip1988 opened this issue Oct 3, 2024 · 5 comments · May be fixed by #23782
Open
10 tasks done

Format (d) is incorrect in Numpy array viewer #22629

PhilipYip1988 opened this issue Oct 3, 2024 · 5 comments · May be fixed by #23782

Comments

@PhilipYip1988
Copy link

Issue Report Checklist

  • Searched the issues page for similar reports
  • Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
  • Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
  • Could not reproduce inside jupyter qtconsole (if console-related)
  • Tried basic troubleshooting (if a bug/error)
    • Restarted Spyder
    • Reset preferences with spyder --reset
    • Reinstalled the latest version of Anaconda
    • Tried the other applicable steps from the Troubleshooting Guide
  • Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description

Variable explorer array editor preferences is expecting a float format specifier for an integer datatype. Giving format (d) is incorrect.

What steps reproduce the problem?

  1. Create a ndarray
import numpy as np
x = np.array([0, 1, 2, 3])

Open x in the variable explorer. Select display options:

spyder6intarray1

Select OK:

spyder6intarray2

Format (d) is incorrect error message:

spyder6intarray3

What is the expected output? What do you see instead?

The array editor preferences is expecting the format specifier for a float instead of an int for an integer datatype. This should expect a format specifier for an int.

Paste Traceback/Error Below (if applicable)

Format (d) is incorrect

Versions

  • Spyder version: 6.0.1 (standalone)
  • Python version: 3.11.9 64-bit
  • Qt version: 5.15.8
  • PyQt5 version: 5.15.9
  • Operating System: Windows-10-10.0.22631-SP0

Dependencies

# Mandatory:
aiohttp >=3.9.3                  :  3.10.5 (OK)
asyncssh >=2.14.0,<3.0.0         :  2.17.0 (OK)
atomicwrites >=1.2.0             :  1.4.1 (OK)
chardet >=2.0.0                  :  5.2.0 (OK)
cloudpickle >=0.5.0              :  3.0.0 (OK)
cookiecutter >=1.6.0             :  2.6.0 (OK)
diff_match_patch >=20181111      :  20230430 (OK)
github >=2.3.0                   :  2.4.0 (OK)
importlib_metadata >=4.6.0       :  8.5.0 (OK)
intervaltree >=3.0.2             :  3.1.0 (OK)
IPython >=8.13.0,<9.0.0,!=8.17.1 :  8.27.0 (OK)
jedi >=0.17.2,<0.20.0            :  0.19.1 (OK)
jellyfish >=0.7                  :  1.1.0 (OK)
jsonschema >=3.2.0               :  4.23.0 (OK)
keyring >=17.0.0                 :  25.4.1 (OK)
nbconvert >=4.0                  :  7.16.4 (OK)
numpydoc >=0.6.0                 :  1.8.0 (OK)
parso >=0.7.0,<0.9.0             :  0.8.4 (OK)
pexpect >=4.4.0                  :  4.9.0 (OK)
pickleshare >=0.4                :  0.7.5 (OK)
psutil >=5.3                     :  6.0.0 (OK)
pygments >=2.0                   :  2.18.0 (OK)
pylint >=3.1,<4                  :  3.3.0 (OK)
pylint_venv >=3.0.2              :  3.0.3 (OK)
pyls_spyder >=0.4.0              :  0.4.0 (OK)
pylsp >=1.12.0,<1.13.0           :  1.12.0 (OK)
pylsp_black >=2.0.0,<3.0.0       :  2.0.0 (OK)
pyuca >=1.2                      :  1.2 (OK)
qdarkstyle >=3.2.0,<3.3.0        :  3.2.3 (OK)
qstylizer >=0.2.2                :  0.2.3 (OK)
qtawesome >=1.3.1,<1.4.0         :  1.3.1 (OK)
qtconsole >=5.6.0,<5.7.0         :  5.6.0 (OK)
qtpy >=2.4.0                     :  2.4.1 (OK)
rtree >=0.9.7                    :  1.3.0 (OK)
setuptools >=49.6.0              :  74.1.2 (OK)
sphinx >=0.6.6                   :  8.0.2 (OK)
spyder_kernels >=3.0.0,<3.1.0    :  3.0.0 (OK)
superqt >=0.6.2,<1.0.0           :  0.6.7 (OK)
textdistance >=4.2.0             :  4.6.2 (OK)
three_merge >=0.1.1              :  0.1.1 (OK)
watchdog >=0.10.3                :  5.0.2 (OK)
yarl >=1.9.4                     :  1.9.4 (OK)
zmq >=24.0.0                     :  26.2.0 (OK)

# Optional:
cython >=0.21                    :  3.0.11 (OK)
matplotlib >=3.0.0               :  3.9.2 (OK)
numpy >=1.7                      :  2.1.1 (OK)
pandas >=1.1.1                   :  2.2.3 (OK)
scipy >=0.17.0                   :  1.14.1 (OK)
sympy >=0.7.3                    :  1.13.2 (OK)

@jitseniesen
Copy link
Member

The Variable Explorer currently supports specifying the format only for floats. I think this is the most common use case, but I can imagine users wanting to specify the format for other types as well.

@PhilipYip1988
Copy link
Author

The array editor preferences has the default value of d when this variable is opened up. So even if I do not enter anything in this field and just go into this menu to select use the default background color, I get the format (d) is incorrect error message.

@jitseniesen
Copy link
Member

Aha, I missed that. Yes, that's clearly a bug.

@PhilipYip1988 Do you want to have a go at fixing it?

@PhilipYip1988
Copy link
Author

I fixed it locally by updating show_preference_dialog line 1134 in spyder/spyder/plugins/variableexplorer/widgets/arrayeditor.py to use the appropriate float format for an integer array:

if dialog.float_format == 'd':
            dialog.float_format = '.0f'

@ccordoba12
Copy link
Member

I fixed it locally by updating show_preference_dialog ...

That's great @PhilipYip1988! Would you like to submit a pull request for it?

If you're interested in giving is a hand with this, please follow the instructions in our Contributing guide.

@ccordoba12 ccordoba12 added this to the v6.0.3 milestone Oct 3, 2024
@ccordoba12 ccordoba12 modified the milestones: v6.0.3, v6.0.4 Oct 31, 2024
@ccordoba12 ccordoba12 modified the milestones: v6.0.4, v6.0.5 Dec 18, 2024
@ccordoba12 ccordoba12 changed the title Format (d) is incorrect variable explorer ndarray int64 Format (d) is incorrect in Numpy array viewer Feb 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants