Questions tagged [holoviews]

HoloViews is a Python library that makes analyzing and visualizing scientific or engineering data much simpler, more intuitive, and more easily reproducible.

HoloViews is a Python library that makes analyzing and visualizing scientific or engineering data much simpler, more intuitive, and more easily reproducible. Without HoloViews, there are typically many steps required before you can see your data, whether you use a GUI interactively or write a function or script to build up a plot. HoloViews instead lets you store your data in an annotated format that is instantly visualizable, with immediate access to both the numeric data and its visualization. For instance, if you wrap a two-dimensional dataset like a fractal in a HoloViews Image object named fractal , you can just type fractal to view it as an image in an IPython/Jupyter Notebook . Most importantly, combining it with other objects is now easy -- you can e.g. view it annotated with a horizontal line and a histogram, next to a slice of it from the indicated cross-section, all without writing any plotting code.

Features

Overview

  • Lets you build data structures that both contain and visualize your data.
  • Includes a rich library of composable elements that can be overlaid, nested, and positioned with ease.
  • Supports rapid data exploration that naturally develops into a fully reproducible workflow .
  • You can create complex animated or interactive visualizations with minimal code.
  • Rich semantics for indexing and slicing of data in arbitrarily high-dimensional spaces .
  • Every parameter of every object includes easy-to-access documentation.
  • All features available in vanilla Python 2 or 3 , with minimal dependencies.
  • All examples on the website are tested automatically each night, using the latest version of the code.

Support for maintainable, reproducible research

  • Supports a truly reproducible workflow by minimizing the code needed for analysis and visualization.
  • Already used in a variety of research projects, from conception to final publication.
  • All HoloViews objects can be pickled and unpickled, with no plotting-library dependencies.
  • Provides comparison utilities for testing, so you know when your results have changed and why.
  • Core data structures only depend on the numpy and param libraries.
  • Provides export and archival facilities for keeping track of your work throughout the lifetime of a project.

Analysis and data access features

  • Allows you to annotate your data with dimensions, units, labels and data ranges.
  • Easily slice and access regions of your data, no matter how high the dimensionality.
  • Apply any suitable function to collapse your data or reduce dimensionality.
  • Helpful textual representation to inform you how every level of your data may be accessed.
  • Includes small library of common operations for any scientific or engineering data.
  • Highly extensible: add new operations to easily apply the data transformations you need.

Visualization features

  • Useful default settings make it easy to inspect data, with minimal code.
  • Powerful normalization system to make understanding your data across plots easy.
  • Build complex animations or interactive visualizations in seconds instead of hours or days.
  • Refine the visualization of your data interactively and incrementally.
  • Separation of concerns: all visualization settings are kept separate from your data objects.
  • Support for interactive tooltips/panning/zooming/linked-brushing, via the optional bokeh or mpld3 backends.

Jupyter/IPython Notebook support

  • Support for both IPython 2 and 3 and for the Jupyter project.
  • Automatic tab-completion everywhere.
  • Exportable sliders and scrubber widgets.
  • Automatic display of animated formats in the notebook or for export, including gif, webm, and mp4.
  • Useful IPython magics for configuring global display options and for customizing objects.
  • Automatic archival and export of notebooks , including extracting figures as SVG, generating a static HTML copy of your results for reference, and storing your optional metadata like version control information.

Integration with third-party libraries

  • Flexible interface to both the pandas and Seaborn libraries
  • Immediately visualize pandas data as any HoloViews object.
  • Seamlessly combine and animate your Seaborn plots in HoloViews rich, compositional data-structures.

Official website: http://holoviews.org/

667 questions
0
votes
2 answers

hvplot networkx node names with hover

I am using hvplot (version 0.4.0) with a networkx undirected graph (networkx version 2.1). When plotting the graph using the bokeh backend, I would like the hover to display the node name and not "index:number". All the examples online in the docs…
P_J
  • 67
  • 9
0
votes
0 answers

Chord diagram with Holoviews (lots of issues)

So I'm attempting to build a chord diagram using holoviews and bokeh and running into some issues. I found a few posts that were somewhat related, but didn't help me much. Essentially I need help with tackling the error at the end so that I can see…
cbakhshi
  • 23
  • 7
0
votes
1 answer

How to connect holoviews in backend with bokehjs frontend

I'm developing a webpage that needs to plot millions of points, so I'm using HoloViews in my backend to generate a plot and send it as a Bokeh model to my frontend which uses Bokehjs. So in the API I call a function that does…
0
votes
0 answers

Building a chord diagram with Holoviews: no error, but no image saved either

I want to draw a chord diagram. To first get the method working, I was following this example. (Note that for this, on the command line, you have to type 'bokeh sampledata' to download the sample data). The code I used (taken mostly from the…
Slowat_Kela
  • 1,377
  • 2
  • 22
  • 60
0
votes
0 answers

How to change elements on dropdown/slider update in holoviews?

I would like to update plot elements whenever the user changes a slider/dropdown menu. I read through the related section in the official docs, however I don't see really how my usecase is covered by that. To make it a bit more concrete: Take this…
0
votes
1 answer

Zoom holomap view to current overlay

What setting(s) control the default view of individual Bokeh/HoloViews holomap views? For example, create several ellipses, each on their own overlay, combine into one holomap, how to set the default view so that it zooms to the current…
phloem7
  • 220
  • 2
  • 12
0
votes
2 answers

Display image from url using holoviews

How can I display an image from url. This result an error import urllib img = urllib.request.urlopen('https://www.edgystl.com/wp-content/uploads/2018/01/leather-bicker-jacket-model-street-style-men-1-e1530998880646.jpg') hv.RGB(img)
vozman
  • 1,198
  • 1
  • 14
  • 19
0
votes
2 answers

Retrieve options already applied to a holoviews object

When I apply options to a holoviews object (Element, Layout, Holomap, ...), is it possible to retrieve those options later on? p=hv.Points(np.random.rand(100,2)).options(width=700, size=10, color='r') Given p, (how) can I find width=700, size=10,…
doppler
  • 997
  • 5
  • 17
0
votes
1 answer

PyViz Dashboard Example

I'm trying to adapt the example here: http://pyviz.org/tutorial/A2_Dashboard_Workflow.html to my own data and requirements. As a simple test I tried the following: import panel as pp import param df = load_some_data parameter_1_list =…
BMichell
  • 3,581
  • 5
  • 23
  • 31
0
votes
1 answer

Error when building graph with bundle_graph/datashader

I'm going through this tutorial to learn a bit about datashader and bokeh. Most of it seems to be fine, except a few examples. For example, this code: %%opts Nodes (size=5) graph = layout_nodes(hv.Graph(edges_df),…
Bob
  • 10,741
  • 27
  • 89
  • 143
0
votes
1 answer

How can I make different columns render as different colors in holoviews / hvplot?

I have a pandas dataframe with two columns of time series data. In my actual data, these columns are large enough that the render is unwieldy without datashader. I am attempting to compare events from these two timeseries. However, I need to be able…
Jeff
  • 377
  • 4
  • 14
0
votes
2 answers

HoloViews plot not closing

Trying HoloViews for the first time I run into a problem when plotting. I tested a boxplot which appears but cannot be closed. I wished the plot would appear in a browser tab... Why does the plot appear on top of the browser and how can it be…
mati
  • 1,093
  • 4
  • 12
  • 18
0
votes
0 answers

What is the equivalent of bokeh's push_notebook in holoviews?

I can refresh a bokeh picture after updating ColumnDataSource, like this: t = show(p, notebook_handle=True) ##### new notebook cell ##### src.data['foo'][0] = 'bar' push_notebook(handle=t) but, how can I refresh a holoviews picture using python?
stigmergy
  • 31
  • 4
0
votes
1 answer

linked streams across dynamic maps

I have a set of hyperspectral data, a grid of X,Y,Energy where each point is a full spectrum. From those spectra I can create image stacks e.g. image stack 1= sum of counts from channel 600-650 across the grid, image stack 2 = 700-750 etc. I would…
pdq
  • 1
  • 1
0
votes
1 answer

Storing outputs of a function based on an interactive argument value

What I'm trying to do is the following. I have some function f(m) that I want to explore interactively for different values of m (for example using ipywidgets). For specific values of m, I'd like to store some string containing for example m in a…
user129412
  • 765
  • 1
  • 6
  • 19