MichaelGrupp / evo

Python package for the evaluation of odometry and SLAM
https://michaelgrupp.github.io/evo/
GNU General Public License v3.0
3.43k stars 746 forks source link

Importing apply_settings from evo.tools.plot doesn't work #591

Closed varunagrawal closed 10 months ago

varunagrawal commented 1 year ago

Description:

I ran pip install -U evo and got the latest package (version 1.25.1).

When I try to change the plot settings, I get an error that the apply_settings method doesn't exist.

Cloning the repo and installing it with pip install -e . doesn't raise the same error, which makes me guess that the issue is in the packaging of v1.25.1. Perhaps the uploaded package didn't use the correct commit/release version?

You should be able to reproduce this by executing the interactive metrics notebook in this repo.

Command:

from evo.tools import plot
plot.apply_settings  # AttributError!
from evo.tools.plot import apply_settings. # throws ImportError

Console output: Case 1:

AttributeError: module 'evo.tools.plot' has no attribute 'apply_settings'

Case 2:

ImportError: cannot import name 'apply_settings' from 'evo.tools.plot'

Additional files: Please attach all the files needed to reproduce the error.

Please give also the following information:

Bastiaan-Sw commented 1 year ago

Any solution yet? I am facing same problem. Tried most of the different versions without any success.

MichaelGrupp commented 12 months ago

I guess the issue is that you use the notebook from the master branch that is ahead of v1.25.1. The change that introduced apply_settings was not released yet (I plan to do that soon with some other things). In that case, I would recommend to check out the 1.25.1 of the repository to get the matching version of the notebook.

varunagrawal commented 12 months ago

That's what we're currently doing: installing via the GitHub repository. I wanted to bring this to your attention to both track the issue as well as because non-expert users are having trouble with this.

IMHO the changes should be done in a separate branch so that master works with the current release, but if you have a process that you follow, feel free to ignore this advice. :)

Looking forward to the new release.

MichaelGrupp commented 10 months ago

New version tag that includes this change was released today.