I am trying to use Jupyter dashboard layout to position widgets on the side, while the main chart suppose to be generated in the center and most likely in a different cell (see screenshot attached).
Since I don't have good control over placement of IPython Widgets, I was trying to create this layout by positioning different jupyter cells.
Is there a way to modify widgets in one cell that would trigger updates in another cell? Or is there a better way to build such a dashboard using Jupyter dashboards?
Related
I'm using Jupyter Lab.
I would like know if there is a way to select some big part of the ipynb file without scrolling (in order to run the selected cells).
I guess a good way to do it would be by using the table of content on the left, but the "problem" is that when I click on a new part, it activates the first cell of this part so I can't use SHIFT + right click.
I have seen that in some IDEs, when you print something , a new window opens up.
my question is that is it possible to have the same thing for jupyter notebook ?
P.s:
It would be better if it was customizable; like being able to change the background color of the new window.
You'd want the newer generation of Jupyter interface, JupyterLab. (At least if you want this soon. I don't know what will be possible as Jupyter notebook 7 starts using more of the underlying machinery that JupyterLab uses.)
Default JupyterLab
Using default current JupyterLab, you can make a separate window for any output that you can drag around and arrange how you want. Right-click on an output cell and select from the menu 'Create New View for Output'. That will open a new window that respects the current JupyterLab theme. (There's a lot of theme adapting abilities so maybe that can provide what you need as far as background.) Once the new window is generated you can click and drag it around the JupyterLab window to arrange it relative to the notebook and then release when you have it outlined the way you want. You can try it right in your browser by clicking this link and letting the session spin up.
(This ability was covered in an answer to a similar question 'How to display Jupyterlab output in new tab?'.)
Similarly, you can have a window that keeps updating with the most recent output by using an attached console and toggling on 'Show All Kernel Activity'. When you have a notebook open, either right-click and select 'New Console for Notebook' or go under the main 'File' menu and select 'New Console for Notebook'. This will open a console and you can then right-click on the console pane and toggle on 'Show All Kernel Activity'. As you run things in the notebook, the output will show at the bottom of this window as well. Even rich output like plots and dataframe displays. You can click on the tab and drag to arrange this window as you wish in the main JupyterLAb pane. See some example images using this here and here.
Related:
It's not a separate window; however, a nice feature of JupyterLab is switching to 'View' to 'Render Side-by-Side' where the output goes to the side of the code cell and not below. Alternatively, you can modify the output cell in some ways like you could do in the classic notebook interface, see here.
Sidecar extension of JupyterLab
There's an extension called sidecar for Jupyterlab that I believe has more options. I wonder if you could combine widgets to control the background as you seek. Don't know about the layering possibilities there.
ipylab extension of JupyterLab
ipylab has even more abilities than sidecar for customization, with 'SplitPanel' and 'DockPanel'. Scroll through the examples shown to get an idea of the possibilities. There's also a 'launch binder' badge so you can try it out.
(You may also want to see Related projects listed at the bottom of ipylab's github page.)
I.e. for one cell in the notebook, the editing version and rendered version are presented side-by-side so you don't lose your place between editing and checking the rendered version. Particularly for Markdown cells.
Are there any plugins or add-ons which achieve this? Perhaps there is a hacky way to have two browser windows where one updates rendered cells in real time and the other is used for editing. I guess even something as simple as the "render cell" command being piped to a different window would do the trick.
I am creating a stacked widget, and want to have each widget have its own titlebar. I am adding the stacked widget to a preexisting layout. For some reason none of my stacked widgets have any sort of titlebar or window at all, just a blank space. I see many posts online on how to get rid of titlebars using setWindowFlags(), but not how to add one.
The title bar is a feature that's only added to top-level widgets, also called windows, by the platform's window manager. It's not something that Qt adds or can make appear within a window itself.
You'll need to add the tile bar using a QLabel or a similar widget.
Is it possible to create such a layout as the one Total Commander uses for displaying drive buttons in the toolbar? Below is the picture of how it takes 2 rows when not all widgets fit a single row, that's exactly what I need to achieve:
Use the FlowLayout:
http://qt-project.org/doc/qt-5.0/qtwidgets/graphicsview-flowlayout.html
TotalCommander was not made however with QT but with Delphi and (FreePascal lately).