如何搜索绘图图形的特定属性的选项?

2022-01-21 00:00:00 python plotly

问题描述

The question

In the figure below, the jagged shape of the line is set using 'hvh' as an argument for the shape property of the line. As a specific example for a more general case, let's say that I've forgotten which porperty (or properites) that take 'hvh' as an argument. How can I search through the entire plotly figure to find it?

Plot:

Code:

#imports
import plotly.plotly as py
import plotly.graph_objs as go
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot

import numpy as np
import pandas as pd
# Notebook settings
init_notebook_mode(connected=True)

# Some sample data
x = np.random.normal(50, 5, 500)
binned = np.histogram(x, bins=25, density=True)
plot_y = np.cumsum(binned[0])

# Line
trace1 = go.Scatter(
    x=binned[1],
    y=plot_y,
    mode='lines',
    name="X",
    hoverinfo='all',
    line=dict(color = 'rgb(1255, 0, 0)', shape='hvh'
    )
)

data = [trace1]

# Layout
layout = dict(title = 'Where is hvh?',
    legend=dict(
        y=0.5,
        traceorder='reversed',
        font=dict(
            size=16
        )
    )
)

# Make figure
fig = dict(data=data, layout=layout)

# Plot
iplot(fig, filename='line-shapes')

The details:

The shape is obtained using line=dict(color = 'rgb(1255, 0, 0)', shape='hvh'. And if you simply run fig, it will return a dict where you can see where the argument is applied to the figure:

{'data': [Scatter({
      'hoverinfo': 'all',
      'line': {'color': 'rgb(1255, 0, 0)', 'shape': 'hvh'},
      'mode': 'lines',
      'name': 'X',
      'x': array([35.36954648,
[...]

Let's say that I'd like to know what other propoerties of a an iplot figure that can take 'hvh' or any other string as an argument, how can I search for that? I happen to know that 'hvh' shows up in the output from help(trace1['line'])

shape
 |      Determines the line shape. With "spline" the lines are drawn
 |      using spline interpolation. The other available values
 |      correspond to step-wise line shapes.
 |      
 |      The 'shape' property is an enumeration that may be specified as:
 |        - One of the following enumeration values:
 |              ['linear', 'spline', 'hv', 'vh', 'hvh', 'vhv']

But if 'hvh' were to occure for several shapes, It would be extremely hard to look through the output from help() for every possible property. If I was looking for 'shape' itself, I could just run a search on plot.ly/python/reference/ and get:

But that is not the case for 'hvh' or hvh:

Thank you for any suggestions!

解决方案

You can always use your in-browser ctl-F to search within the page at https://plot.ly/python/reference/ if the search box isn't giving you what you need.

That said, I've just updated our search index to include the list of accepted values in enumerated attributes, so as of 2 minutes ago, searching for "hvh" gives:

相关文章