jupyter-lab installed but jupyter doesn't see it - python-3.x

I have jupyter-lab installed via pip3 with Python 3.8.10 on Ubuntu 20.04. I've been using it for months, but noticed some problems getting KeplerGL to render maps in it. While trouble-shooting this, I ran jupyter --version to see which version of jupyterlab I have installed (KeplerGL setup varies based on jupyter-lab version), and mysteriously, it says:
jupyter lab : not installed
Quite odd, because I have it open right now; I launched it from the command line like this:
$ jupyter-lab
I ran pip3 install jupyterlab for good measure, and got a bunch of "requirement already satisfied" messages. I suspect this has something to do with my inability to render KeplerGL, but my main purpose for this inquiry is figuring out why Jupyter isn't seeing jupyter-lab.

Did you make sure everything is installed in the same environment?

Related

Trying to make sense of Python/Jupyter environment on MacOS

Background: while running Jupyter Notebook a new import was failing even though the library was installing successfully using pip3. Some of the set up for the code I was running was done in PyCharm which was using a virtual Python 3.8.2 environment. The failing import library is in the virtual environment so why isn't Jupyter seeing it?
I went looking and found that there are multiple versions of Python installed:
/Library/Python/2.7
/Library/Frameworks/Python.framework/Versions/3.8
/usr/local/bin/python3
/usr/local/bin/python3.8
/usr/local/bin/jupyter (included this in case it clarifies things)
/usr/bin/python
/usr/bin/python3
/usr/local/Cellar/python/3.7.6_1
/Users/xxx/anaconda3/bin/python3.7 (anaconda was uninstalled months ago so why is this still here?)
/Users/xxx/git/moat-ds/venv/lib/python3.8
I have installed pyenv and virtualenv and tried (unsuccessfully) to sort things out through this and similar articles. But all of this has only left me with questions:
what are these different directories doing?
when launched what is Jupyter notebook using for 'python 3' kernel?
where are the python packages stored when I run pip3 at the CLI (in pycharm packages are put in the \venv folder but otherwise?)
installing jupyter with pip from pyenv fixed my problem
brew uninstall jupyter
pip install jupyter
and after restarting your console it should be pyenv's jupyter
After trying #Akbar30bill's answer without success I did brew doctor and restarted my terminal and tried again and it worked. Wasn't linked correctly or something.

why is the pipenv install of spyder causing a complete python tree install?

Just installing spyder3 in a pipenv
reports it finds the spyder requirement (and 2 others) already satisfied. However, pipenv continues with the installation of ~600 MB of python packages in the virtual environment.
To work with spyder3 and the latest ipywidgets on ubuntu disco, I set up a
pipenv --three --site-packages.
I am working on scipy simulation code and want to have simple widgets for some needed config functionality, so I thought: "why not do use widgets in a jupyter notebook?"
The ipywidgets distro package release (6.0.*) is quite behind the latest version (7.5.*), so some things were uglier or unimplemented.
So before further steps, I want to set up spyder within the created pipenv. It is already installed an the system, so there shouldn't be happening too much:
pipenv install spyder
But this results in a longer waiting period and the install of 83 packages,
🐍 ▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉ 83/83 — 00:00:50
For getting what I already had.
python 3.7.3
spyder 3.3.2
I'd like to understand why the install is getting so big, since this is the kind of behavior I'd rather avoid (i.e. by not using anaconda).

PyMesh Installation on Python 3.6 Windows

I am trying to install Pymesh on Python 3.6.
In my first try, I installed through pip, however it installed a wrong PyMesh than I wanted.
It installed the following, https://pypi.org/project/pymesh/, while I wanted https://pymesh.readthedocs.io/en/latest/
I uninstalled it, and tried installing the later PyMesh, however no luck. There were no instructions for windows. I downloaded the source from github. I extracted and pasted it in C:\Python36\Lib\site-packages
Then I ran python3 setup.py build - when an error showed up, I also tried python3 setup.py install, which worked. However, I am unable to do a simple basic command mentioned in the web page: https://pymesh.readthedocs.io/en/latest/basic.html
It is saying pymesh does not have module name load_mesh.
Looking for the process or thoughts on how to properly install pyMesh for Windows.
My go to solution for problems like this on Windows is always to try it in a conda env first. If that fails, use Docker.

Could not determine jupyterlab build status without nodejs

I'm seeing this error in the terminal: "Could not determine jupyterlab build status without nodejs". Even when latest version of nodejs is installed on my PC.
Please guide what should I do?
I ran into a similar issue this morning and ended up here. The diagnostic message appears to be harmless:
[W 07:35:51.998 LabApp] Could not determine jupyterlab build status without nodejs
However, the way I resolved it for my configuration (Windows 10, Anaconda distribution of Python 3.7) was to download NodeJS from the source. Choose the LTS (Long Term Support) version of Node.js rather than the "Current with the latest features" edition.
Next, ensure the node executable is in the search path. On Windows, hold the Windows key and Break. Click on Advanced System Settings -> Environment Variables -> System Variables. Double click PATH to edit. Click OK until you're out.
In a new command window, run:
jupyter lab
You're looking for something like this in the output:
[I 07:16:26.721 LabApp] Node v10.15.3
On Unbuntu 20.04, just activate the environment and install by conda:
conda install -c conda-forge nodejs
Try the command below, follow through the prompt and see if it helps in your issue.
jupyter lab --debug
You can check your installation of npm or nodes by using
node -v
npm -v
FWIW, I got the same error message, on Win10, and just restarted the virtual environment, restarted jupyter lab and have not had the error since (several days). Doesnt help of course if there is an underlying issue:)
For Mac OS/Windows: install LTS version of Node.js from here and restart jupyter lab.
I installed it from source but it looks like a version had installed on conda that was old, which was causing this issue. If you've installed nodejs with conda (or something similar) you will get an outdated version, uninstall it and install it from the nodejs website manually. The error will fix.
Just for completeness, on Linux Mint LMDE 5, installing with pip solved the problem:
pip install nodejs

Using Spark Kernel on Jupyter

So I am just starting out with Jupyter and the idea of notebooks.
I usually program in VIM and terminal so I am still trying to figure out somethings.
I am trying to use a Toree kernel.
I am trying to install a kernel that is capable of executing spark and have come across Toree. I installed toree and it appears when I run kernel list. Here is the result:
$ jupyter kernelspec list
Available kernels:
python3 C:\Users\UserName\AppData\Local\Continuum\Anaconda3\lib\site-packages\ipykernel\resources
bash C:\Users\UserName\AppData\Roaming\jupyter\kernels\bash
toree C:\ProgramData\jupyter\kernels\toree
So when I open a toree notebook, the kernel dies and will not restart. Closing the notebook and reopening it results in the kernel changing to Python3.
There is a large error message that gets printed to the host terminal and the notebook error message. There is another post that has been put on hold; they are the same error messages.
I followed this page for the install:
https://github.com/apache/incubator-toree
These instructions are mostly for Linux/Mac is appears.
Any thoughts on how to get a spark notebook on Jupyter?
I understand there is not a lot of information here, If more is needed. Let me know.
I posted a similar question to Gitter and they replied saying (paraphrased) that:
Toree is the future of spark programming on Jupyter and will appear to have installed correctly on a windows machine but the .jar and .sh files will not operate correctly on the windows machine.
Knowing this, I tried it on my Linux (Fedora) and a borrowed Mac. Once jupyter was installed (and Anaconda) I entered these commands:
$ SparkHome="~/spark/spark1.5.5-bin.hadoop2.6"
$ sudo pip install toree
Password: **********
$ sudo jupyter toree install --spark_home=$SparkHome
Jupyter ran the toree notebook on both machines. I presume that a VM might work as well. I want to see if the Window's 10 bash shell will also work with this as I am running windows 7.
Thanks for the other Docs!
The answer from #user3025281 solved the issue for me as well. I had to make the following adjustment for my environment (an Ubuntu 16.04 Linux distro running Spark 2.2.0 and Hadoop 2.7). The downloads are direct file downloads from the hosting sites or a mirror site.
You'll be mostly configurating your environment variables then calling jupyter, assuming it's been installed through anaconda. that's pretty much it
SPARK_HOME="~/spark/spark-2.2.0-bin-hadoop2.7"
Write this into your ~/.bashrc file and then call source on `.bashrc
# reload environment variables
source ~/.bashrc`
Install
sudo pip install toree
sudo jupyter toree install --spark_home=$SPARK_HOME
Optional: On Windows 10, you could use "Bash on Ubuntu on Windows" for configurating jupyter on a linux distro

Resources