0

Here is the notebook which illustrates issues below:

  • I can overlay bars in matplotlib backend and somewhat with plotly - but not with bokeh
  • yaxis label is no longer valid after overlay and should be available to change the label by the user request
  • how to set hover to show one more column data?
  • in plotly the legend should be replaced by name of the overlayed objects - how to do that
  • in plotly aspect, width, height are not working. Or is it me not using it right?
THOTH
  • 109
  • 1
  • 12

1 Answers1

1

For these types of questions, SO is not a very efficient way to interact with HoloViews developers. It would be better to use a Github issue at the HoloViews site (for specific problems and bug reports), or to use Gitter for informal chatting about usage.

To respond to your specific issues:

I can overlay bars in matplotlib backend and somewhat with plotly - but not with bokeh

The Bokeh support for Bars is based on the inflexible Bokeh.Charts implementation, and needs to be rewritten in a general way before it will support operations that other Element types do (see https://github.com/ioam/holoviews/issues/1047).

yaxis label is no longer valid after overlay and should be available to change the label by the user request

Overlays will preserve the label if all overlaid items have the same label, but otherwise the result is ambiguous and so no label is used for the resulting overlay (apart from some special cases like annotations). You can do .relabel("New label") on the overlay (or any hv object) to set the label of the result explicitly.

how to set hover to show one more column data?

Just add additional vdims not necessarily mapped onto visible plot items, e.g. for a Points plot (see earthquake example).

in plotly the legend should be replaced by name of the overlayed objects - how to do that in plotly aspect, width, height are not working. Or is it me not using it right?

Plotly is not a supported backend; it's provided because it's useful in some cases, but someone else would need to take responsibility for maintaining and supporting it, as we focus on the Bokeh and Matplotlib backends.

James A. Bednar
  • 3,195
  • 1
  • 9
  • 13
  • Ok. I did this: `df.to.scatter(kdims=['min'], vdims=['max','test'],groupby=[])(style=dict(size=10),plot=dict(tools=['hover']))` and got what I wanted with a warning message: `WARNING:root:PointPlot01830: test dimension is not numeric, cannot use to scale Scatter size.` – THOTH Mar 27 '17 at 18:48
  • I couldn't figure what to do with relabel - it did nothing. I also tried to use redim - but couldn't figure out how... Could you please update the answer with an example? – THOTH Mar 27 '17 at 18:51
  • Sorry -- .relabel is about the figure title; now I see you were asking only about the yaxis. In that bit of code you'd need to set size_index=None so that it doesn't try to use the extra vdim as the size index. I believe that behavior (which is rarely desired) has now been disabled in the latest master, as of a week or so ago, so if you update the warning would go away. – James A. Bednar Mar 31 '17 at 04:13
  • Thanks. I see that the warning is gone. But I still don't know `how update the label of the y axis`. Is it actually possible? – THOTH Mar 31 '17 at 13:32