diff --git a/CHANGELOG.md b/CHANGELOG.md index b681a7f5828..290931525ef 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). +## [2.4.0] - 2018-02-16 +### Added +- County Choropleth figure factory. Call `help(plotly.figure_factory.create_choropleth)` for examples and how to get started making choropleths of US counties with the Python API. + + ## [2.3.0] - 2018-01-25 ### Fixed - Merged [pull request](https://github.com/plotly/plotly.py/commit/a226e07393c158e01c34c050aaf492da9d77679a) that fixes `GraphWidget` for IPython > v6 diff --git a/optional-requirements.txt b/optional-requirements.txt index ada6fb8598d..3d4083f6bf9 100644 --- a/optional-requirements.txt +++ b/optional-requirements.txt @@ -28,3 +28,8 @@ scipy ## jupyter ## jupyter ipykernel + +## deps for _county_choropleth.py figure factory +pyshp +geopandas +shapely \ No newline at end of file diff --git a/plotly/colors.py b/plotly/colors.py index f037a142a1a..aeb2dd4bcfc 100644 --- a/plotly/colors.py +++ b/plotly/colors.py @@ -18,18 +18,60 @@ floats between 0 and 1 inclusive. ----- -Types of colormap: +Colormaps and Colorscales: +A colormap or a colorscale is a correspondence between values - Pythonic +objects such as strings and floats - to colors. + There are typically two main types of colormaps that exist: numerical and categorical colormaps. -Numerical colormaps are used when a the coloring column being used takes a -spectrum of values or numbers. Alternatively, a categorical colormap is used -to assign a specific value in a color column to a specific color everytime it -appears in the plot at hand. For instance, a column of strings in a dataframe -would naturally use a categorical colormap. You can choose however to use a -categorical colormap with a column of numbers. Be careful though, as if you -have a large set of unique numbers in your column you'll get a lot of colors. - +Numerical: +---------- +Numerical colormaps are used when the coloring column being used takes a +spectrum of values or numbers. + +A classic example from the Plotly library: +``` +rainbow_colorscale = [ + [0, 'rgb(150,0,90)'], [0.125, 'rgb(0,0,200)'], + [0.25, 'rgb(0,25,255)'], [0.375, 'rgb(0,152,255)'], + [0.5, 'rgb(44,255,150)'], [0.625, 'rgb(151,255,0)'], + [0.75, 'rgb(255,234,0)'], [0.875, 'rgb(255,111,0)'], + [1, 'rgb(255,0,0)'] +] +``` + +Notice that this colorscale is a list of lists with each inner list containing +a number and a color. These left hand numbers in the nested lists go from 0 to +1, and they are like pointers tell you when a number is mapped to a specific +color. + +If you have a column of numbers `col_num` that you want to plot, and you know + +``` +min(col_num) = 0 +max(col_num) = 100 +``` + +then if you pull out the number `12.5` in the list and want to figure out what +color the corresponding chart element (bar, scatter plot, etc) is going to be, +you'll figure out that proportionally 12.5 to 100 is the same as 0.125 to 1. +So, the point will be mapped to 'rgb(0,0,200)'. + +All other colors between the pinned values in a colorscale are linearly +interpolated. + +Categorical: +------------ +Alternatively, a categorical colormap is used to assign a specific value in a +color column to a specific color everytime it appears in the dataset. + +A column of strings in a panadas.dataframe that is chosen to serve as the +color index would naturally use a categorical colormap. However, you can +choose to use a categorical colormap with a column of numbers. + +Be careful! If you have a lot of unique numbers in your color column you will +end up with a colormap that is massive and may slow down graphing performance. """ from __future__ import absolute_import diff --git a/plotly/figure_factory/__init__.py b/plotly/figure_factory/__init__.py index 5aa4e97e281..9bf00cbcf2a 100644 --- a/plotly/figure_factory/__init__.py +++ b/plotly/figure_factory/__init__.py @@ -18,3 +18,4 @@ from plotly.figure_factory._table import create_table from plotly.figure_factory._trisurf import create_trisurf from plotly.figure_factory._violin import create_violin +from plotly.figure_factory._county_choropleth import create_choropleth \ No newline at end of file diff --git a/plotly/figure_factory/_county_choropleth.py b/plotly/figure_factory/_county_choropleth.py new file mode 100644 index 00000000000..ddf7dfdcc3f --- /dev/null +++ b/plotly/figure_factory/_county_choropleth.py @@ -0,0 +1,928 @@ +from plotly import colors, exceptions, optional_imports + +from plotly.figure_factory import utils + +import io +import numpy as np +import pandas as pd +import warnings + +from math import log, floor +from numbers import Number + +pd.options.mode.chained_assignment = None + +shapely = optional_imports.get_module('shapely') +shapefile = optional_imports.get_module('shapefile') +gp = optional_imports.get_module('geopandas') + + +def _create_us_counties_df(st_to_state_name_dict, state_to_st_dict): + # URLS + data_url = 'plotly/package_data/data/' + + shape_pre2010 = 'gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp' + shape_pre2010 = data_url + shape_pre2010 + df_shape_pre2010 = gp.read_file(shape_pre2010) + df_shape_pre2010['FIPS'] = (df_shape_pre2010['STATE'] + + df_shape_pre2010['COUNTY']) + df_shape_pre2010['FIPS'] = pd.to_numeric(df_shape_pre2010['FIPS']) + + states_path = 'cb_2016_us_state_500k/cb_2016_us_state_500k.shp' + states_path = data_url + states_path + + # state df + df_state = gp.read_file(states_path) + df_state = df_state[['STATEFP', 'NAME', 'geometry']] + df_state = df_state.rename(columns={'NAME': 'STATE_NAME'}) + + county_url = 'plotly/package_data/data/cb_2016_us_county_500k/' + filenames = ['cb_2016_us_county_500k.dbf', + 'cb_2016_us_county_500k.shp', + 'cb_2016_us_county_500k.shx'] + + for j in range(len(filenames)): + filenames[j] = county_url + filenames[j] + + dbf = io.open(filenames[0], 'rb') + shp = io.open(filenames[1], 'rb') + shx = io.open(filenames[2], 'rb') + + r = shapefile.Reader(shp=shp, shx=shx, dbf=dbf) + + attributes, geometry = [], [] + field_names = [field[0] for field in r.fields[1:]] + for row in r.shapeRecords(): + geometry.append(shapely.geometry.shape(row.shape.__geo_interface__)) + attributes.append(dict(zip(field_names, row.record))) + + gdf = gp.GeoDataFrame(data=attributes, geometry=geometry) + + gdf['FIPS'] = gdf['STATEFP'] + gdf['COUNTYFP'] + gdf['FIPS'] = pd.to_numeric(gdf['FIPS']) + + # add missing counties + f = 46113 + singlerow = pd.DataFrame( + [ + [st_to_state_name_dict['SD'], 'SD', + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['geometry'].iloc[0], + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['FIPS'].iloc[0], + '46', 'Shannon'] + ], + columns=['State', 'ST', 'geometry', 'FIPS', 'STATEFP', 'NAME'], + index=[max(gdf.index) + 1] + ) + gdf = gdf.append(singlerow) + + f = 51515 + singlerow = pd.DataFrame( + [ + [st_to_state_name_dict['VA'], 'VA', + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['geometry'].iloc[0], + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['FIPS'].iloc[0], + '51', 'Bedford City'] + ], + columns=['State', 'ST', 'geometry', 'FIPS', 'STATEFP', 'NAME'], + index=[max(gdf.index) + 1] + ) + gdf = gdf.append(singlerow) + + f = 2270 + singlerow = pd.DataFrame( + [ + [st_to_state_name_dict['AK'], 'AK', + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['geometry'].iloc[0], + df_shape_pre2010[df_shape_pre2010['FIPS'] == f]['FIPS'].iloc[0], + '02', 'Wade Hampton'] + ], + columns=['State', 'ST', 'geometry', 'FIPS', 'STATEFP', 'NAME'], + index=[max(gdf.index) + 1] + ) + gdf = gdf.append(singlerow) + + row_2198 = gdf[gdf['FIPS'] == 2198] + row_2198.index = [max(gdf.index) + 1] + row_2198.loc[row_2198.index[0], 'FIPS'] = 2201 + row_2198.loc[row_2198.index[0], 'STATEFP'] = '02' + gdf = gdf.append(row_2198) + + row_2105 = gdf[gdf['FIPS'] == 2105] + row_2105.index = [max(gdf.index) + 1] + row_2105.loc[row_2105.index[0], 'FIPS'] = 2232 + row_2105.loc[row_2105.index[0], 'STATEFP'] = '02' + gdf = gdf.append(row_2105) + gdf = gdf.rename(columns={'NAME': 'COUNTY_NAME'}) + + gdf_reduced = gdf[['FIPS', 'STATEFP', 'COUNTY_NAME', 'geometry']] + gdf_statefp = gdf_reduced.merge(df_state[['STATEFP', 'STATE_NAME']], + on='STATEFP') + + ST = [] + for n in gdf_statefp['STATE_NAME']: + ST.append(state_to_st_dict[n]) + + gdf_statefp['ST'] = ST + return gdf_statefp, df_state + + +st_to_state_name_dict = { + 'AK': 'Alaska', + 'AL': 'Alabama', + 'AR': 'Arkansas', + 'AZ': 'Arizona', + 'CA': 'California', + 'CO': 'Colorado', + 'CT': 'Connecticut', + 'DC': 'District of Columbia', + 'DE': 'Delaware', + 'FL': 'Florida', + 'GA': 'Georgia', + 'HI': 'Hawaii', + 'IA': 'Iowa', + 'ID': 'Idaho', + 'IL': 'Illinois', + 'IN': 'Indiana', + 'KS': 'Kansas', + 'KY': 'Kentucky', + 'LA': 'Louisiana', + 'MA': 'Massachusetts', + 'MD': 'Maryland', + 'ME': 'Maine', + 'MI': 'Michigan', + 'MN': 'Minnesota', + 'MO': 'Missouri', + 'MS': 'Mississippi', + 'MT': 'Montana', + 'NC': 'North Carolina', + 'ND': 'North Dakota', + 'NE': 'Nebraska', + 'NH': 'New Hampshire', + 'NJ': 'New Jersey', + 'NM': 'New Mexico', + 'NV': 'Nevada', + 'NY': 'New York', + 'OH': 'Ohio', + 'OK': 'Oklahoma', + 'OR': 'Oregon', + 'PA': 'Pennsylvania', + 'RI': 'Rhode Island', + 'SC': 'South Carolina', + 'SD': 'South Dakota', + 'TN': 'Tennessee', + 'TX': 'Texas', + 'UT': 'Utah', + 'VA': 'Virginia', + 'VT': 'Vermont', + 'WA': 'Washington', + 'WI': 'Wisconsin', + 'WV': 'West Virginia', + 'WY': 'Wyoming' +} + +state_to_st_dict = { + 'Alabama': 'AL', + 'Alaska': 'AK', + 'American Samoa': 'AS', + 'Arizona': 'AZ', + 'Arkansas': 'AR', + 'California': 'CA', + 'Colorado': 'CO', + 'Commonwealth of the Northern Mariana Islands': 'MP', + 'Connecticut': 'CT', + 'Delaware': 'DE', + 'District of Columbia': 'DC', + 'Florida': 'FL', + 'Georgia': 'GA', + 'Guam': 'GU', + 'Hawaii': 'HI', + 'Idaho': 'ID', + 'Illinois': 'IL', + 'Indiana': 'IN', + 'Iowa': 'IA', + 'Kansas': 'KS', + 'Kentucky': 'KY', + 'Louisiana': 'LA', + 'Maine': 'ME', + 'Maryland': 'MD', + 'Massachusetts': 'MA', + 'Michigan': 'MI', + 'Minnesota': 'MN', + 'Mississippi': 'MS', + 'Missouri': 'MO', + 'Montana': 'MT', + 'Nebraska': 'NE', + 'Nevada': 'NV', + 'New Hampshire': 'NH', + 'New Jersey': 'NJ', + 'New Mexico': 'NM', + 'New York': 'NY', + 'North Carolina': 'NC', + 'North Dakota': 'ND', + 'Ohio': 'OH', + 'Oklahoma': 'OK', + 'Oregon': 'OR', + 'Pennsylvania': 'PA', + 'Puerto Rico': '', + 'Rhode Island': 'RI', + 'South Carolina': 'SC', + 'South Dakota': 'SD', + 'Tennessee': 'TN', + 'Texas': 'TX', + 'United States Virgin Islands': 'VI', + 'Utah': 'UT', + 'Vermont': 'VT', + 'Virginia': 'VA', + 'Washington': 'WA', + 'West Virginia': 'WV', + 'Wisconsin': 'WI', + 'Wyoming': 'WY' +} + +USA_XRANGE = [-125.0, -65.0] +USA_YRANGE = [25.0, 49.0] + + +def _human_format(number): + units = ['', 'K', 'M', 'G', 'T', 'P'] + k = 1000.0 + magnitude = int(floor(log(number, k))) + return '%.2f%s' % (number / k**magnitude, units[magnitude]) + + +def _intervals_as_labels(array_of_intervals, round_legend_values, exponent_format): + """ + Transform an number interval to a clean string for legend + + Example: [-inf, 30] to '< 30' + """ + infs = [float('-inf'), float('inf')] + string_intervals = [] + for interval in array_of_intervals: + # round to 2nd decimal place + if round_legend_values: + rnd_interval = [ + (int(interval[i]) if interval[i] not in infs else + interval[i]) + for i in range(2) + ] + else: + rnd_interval = [round(interval[0], 2), + round(interval[1], 2)] + + num0 = rnd_interval[0] + num1 = rnd_interval[1] + if exponent_format: + if num0 not in infs: + num0 = _human_format(num0) + if num1 not in infs: + num1 = _human_format(num1) + else: + if num0 not in infs: + num0 = "{:,}".format(num0) + if num1 not in infs: + num1 = "{:,}".format(num1) + + if num0 == float('-inf'): + as_str = '< {}'.format(num1) + elif num1 == float('inf'): + as_str = '> {}'.format(num0) + else: + as_str = '{} - {}'.format(num0, num1) + string_intervals.append(as_str) + return string_intervals + + +def _calculations(df, fips, values, index, f, simplify_county, level, + x_centroids, y_centroids, centroid_text, x_traces, + y_traces, fips_polygon_map): + if fips_polygon_map[f].type == 'Polygon': + x = fips_polygon_map[f].simplify( + simplify_county + ).exterior.xy[0].tolist() + y = fips_polygon_map[f].simplify( + simplify_county + ).exterior.xy[1].tolist() + + x_c, y_c = fips_polygon_map[f].centroid.xy + county_name_str = str(df[df['FIPS'] == f]['COUNTY_NAME'].iloc[0]) + state_name_str = str(df[df['FIPS'] == f]['STATE_NAME'].iloc[0]) + t_c = ( + 'County: ' + county_name_str + '
' + + 'State: ' + state_name_str + '
' + + 'FIPS: ' + str(f) + '
Value: ' + str(values[index]) + ) + + x_centroids.append(x_c[0]) + y_centroids.append(y_c[0]) + centroid_text.append(t_c) + + x_traces[level] = x_traces[level] + x + [np.nan] + y_traces[level] = y_traces[level] + y + [np.nan] + elif fips_polygon_map[f].type == 'MultiPolygon': + x = ([poly.simplify(simplify_county).exterior.xy[0].tolist() for + poly in fips_polygon_map[f]]) + y = ([poly.simplify(simplify_county).exterior.xy[1].tolist() for + poly in fips_polygon_map[f]]) + + x_c = [poly.centroid.xy[0].tolist() for poly in fips_polygon_map[f]] + y_c = [poly.centroid.xy[1].tolist() for poly in fips_polygon_map[f]] + + county_name_str = str(df[df['FIPS'] == f]['COUNTY_NAME'].iloc[0]) + state_name_str = str(df[df['FIPS'] == f]['STATE_NAME'].iloc[0]) + text = ( + 'County: ' + county_name_str + '
' + + 'State: ' + state_name_str + '
' + + 'FIPS: ' + str(f) + '
Value: ' + str(values[index]) + ) + t_c = [text for poly in fips_polygon_map[f]] + x_centroids = x_c + x_centroids + y_centroids = y_c + y_centroids + centroid_text = t_c + centroid_text + for x_y_idx in range(len(x)): + x_traces[level] = x_traces[level] + x[x_y_idx] + [np.nan] + y_traces[level] = y_traces[level] + y[x_y_idx] + [np.nan] + + return x_traces, y_traces, x_centroids, y_centroids, centroid_text + + +def create_choropleth(fips, values, scope=['usa'], binning_endpoints=None, + colorscale=None, order=None, simplify_county=0.02, + simplify_state=0.02, asp=None, offline_mode=False, + show_hover=True, show_state_data=True, + state_outline=None, county_outline=None, + centroid_marker=None, round_legend_values=False, + exponent_format=False, legend_title='', + **layout_options): + """ + Returns figure for county choropleth. Uses data from package_data. + + :param (list) fips: list of FIPS values which correspond to the con + catination of state and county ids. An example is '01001'. + :param (list) values: list of numbers/strings which correspond to the + fips list. These are the values that will determine how the counties + are colored. + :param (list) scope: list of states and/or states abbreviations. Fits + all states in the camera tightly. Selecting ['usa'] is the equivalent + of appending all 50 states into your scope list. Selecting only 'usa' + does not include 'Alaska', 'Puerto Rico', 'American Samoa', + 'Commonwealth of the Northern Mariana Islands', 'Guam', + 'United States Virgin Islands'. These must be added manually to the + list. + Default = ['usa'] + :param (list) binning_endpoints: ascending numbers which implicitly define + real number intervals which are used as bins. The colorscale used must + have the same number of colors as the number of bins and this will + result in a categorical colormap. + :param (list) colorscale: a list of colors with length equal to the + number of categories of colors. The length must match either all + unique numbers in the 'values' list or if endpoints is being used, the + number of categories created by the endpoints.\n + For example, if binning_endpoints = [4, 6, 8], then there are 4 bins: + [-inf, 4), [4, 6), [6, 8), [8, inf) + :param (list) order: a list of the unique categories (numbers/bins) in any + desired order. This is helpful if you want to order string values to + a chosen colorscale. + :param (float) simplify_county: determines the simplification factor + for the counties. The larger the number, the fewer vertices and edges + each polygon has. See + http://toblerity.org/shapely/manual.html#object.simplify for more + information. + Default = 0.02 + :param (float) simplify_state: simplifies the state outline polygon. + See http://toblerity.org/shapely/manual.html#object.simplify for more + information. + Default = 0.02 + :param (float) asp: the width-to-height aspect ratio for the camera. + Default = 2.5 + :param (bool) offline_mode: if set to True, the centroids of each county + are invisible until selected over with a dragbox. Warning: this can + only be used if you are plotting in offline mode with validate set to + False as the params that are being added to the fig dictionary are not + yet part of the plotly.py python library. Stay tuned for updates. + Default = False + :param (bool) show_hover: show county hover and centroid info + :param (bool) show_state_data: reveals state boundary lines + :param (dict) state_outline: dict of attributes of the state outline + including width and color. See + https://plot.ly/python/reference/#scatter-marker-line for all valid + params + :param (dict) county_outline: dict of attributes of the county outline + including width and color. See + https://plot.ly/python/reference/#scatter-marker-line for all valid + params + :param (dict) centroid_marker: dict of attributes of the centroid marker. + See https://plot.ly/python/reference/#scatter-marker for all valid + params + :param (bool) round_legend_values: automatically round the numbers that + appear in the legend to the nearest integer. + Default = False + :param (bool) exponent_format: if set to True, puts numbers in the K, M, + B number format. For example 4000.0 becomes 4.0K + Default = False + :param (str) legend_title: title that appears above the legend + :param **layout_options: a **kwargs argument for all layout parameters + + + Example 1: Florida + ``` + import plotly.plotly as py + import plotly.figure_factory as ff + + import numpy as np + import pandas as pd + + df_sample = pd.read_csv( + 'https://raw.githubusercontent.com/plotly/datasets/master/minoritymajority.csv' + ) + df_sample_r = df_sample[df_sample['STNAME'] == 'Florida'] + + values = df_sample_r['TOT_POP'].tolist() + fips = df_sample_r['FIPS'].tolist() + + binning_endpoints = list(np.mgrid[min(values):max(values):4j]) + colorscale = ["#030512","#1d1d3b","#323268","#3d4b94","#3e6ab0", + "#4989bc","#60a7c7","#85c5d3","#b7e0e4","#eafcfd"] + fig = ff.create_choropleth( + fips=fips, values=values, scope=['Florida'], show_state_data=True, + colorscale=colorscale, binning_endpoints=binning_endpoints, + round_legend_values=True, plot_bgcolor='rgb(229,229,229)', + paper_bgcolor='rgb(229,229,229)', legend_title='Florida Population', + county_outline={'color': 'rgb(255,255,255)', 'width': 0.5}, + exponent_format=True, + ) + py.iplot(fig, filename='choropleth_florida') + ``` + + Example 2: New England + ``` + import plotly.plotly as py + import plotly.figure_factory as ff + + import pandas as pd + + NE_states = ['Connecticut', 'Maine', 'Massachusetts', + 'New Hampshire', 'Rhode Island'] + df_sample = pd.read_csv( + 'https://raw.githubusercontent.com/plotly/datasets/master/minoritymajority.csv' + ) + df_sample_r = df_sample[df_sample['STNAME'].isin(NE_states)] + colorscale = ['rgb(68.0, 1.0, 84.0)', + 'rgb(66.0, 64.0, 134.0)', + 'rgb(38.0, 130.0, 142.0)', + 'rgb(63.0, 188.0, 115.0)', + 'rgb(216.0, 226.0, 25.0)'] + + values = df_sample_r['TOT_POP'].tolist() + fips = df_sample_r['FIPS'].tolist() + fig = ff.create_choropleth( + fips=fips, values=values, scope=NE_states, show_state_data=True + ) + py.iplot(fig, filename='choropleth_new_england') + ``` + + Example 3: California and Surrounding States + ``` + import plotly.plotly as py + import plotly.figure_factory as ff + + import pandas as pd + + df_sample = pd.read_csv( + 'https://raw.githubusercontent.com/plotly/datasets/master/minoritymajority.csv' + ) + df_sample_r = df_sample[df_sample['STNAME'] == 'California'] + + values = df_sample_r['TOT_POP'].tolist() + fips = df_sample_r['FIPS'].tolist() + + colorscale = [ + 'rgb(193, 193, 193)', + 'rgb(239,239,239)', + 'rgb(195, 196, 222)', + 'rgb(144,148,194)', + 'rgb(101,104,168)', + 'rgb(65, 53, 132)' + ] + + fig = ff.create_choropleth( + fips=fips, values=values, colorscale=colorscale, + scope=['CA', 'AZ', 'Nevada', 'Oregon', ' Idaho'], + binning_endpoints=[14348, 63983, 134827, 426762, 2081313], + county_outline={'color': 'rgb(255,255,255)', 'width': 0.5}, + legend_title='California Counties', + title='California and Nearby States' + ) + py.iplot(fig, filename='choropleth_california_and_surr_states_outlines') + ``` + + Example 4: USA + ``` + import plotly.plotly as py + import plotly.figure_factory as ff + + import numpy as np + import pandas as pd + + df_sample = pd.read_csv( + 'https://raw.githubusercontent.com/plotly/datasets/master/laucnty16.csv' + ) + df_sample['State FIPS Code'] = df_sample['State FIPS Code'].apply( + lambda x: str(x).zfill(2) + ) + df_sample['County FIPS Code'] = df_sample['County FIPS Code'].apply( + lambda x: str(x).zfill(3) + ) + df_sample['FIPS'] = ( + df_sample['State FIPS Code'] + df_sample['County FIPS Code'] + ) + + binning_endpoints = list(np.linspace(1, 12, len(colorscale) - 1)) + colorscale = ["#f7fbff", "#ebf3fb", "#deebf7", "#d2e3f3", "#c6dbef", + "#b3d2e9", "#9ecae1", "#85bcdb", "#6baed6", "#57a0ce", + "#4292c6", "#3082be", "#2171b5", "#1361a9", "#08519c", + "#0b4083","#08306b"] + fips = df_sample['FIPS'] + values = df_sample['Unemployment Rate (%)'] + fig = ff.create_choropleth( + fips=fips, values=values, scope=['usa'], + binning_endpoints=binning_endpoints, colorscale=colorscale, + show_hover=True, centroid_marker={'opacity': 0}, + asp=2.9, title='USA by Unemployment %', + legend_title='Unemployment %' + ) + + py.iplot(fig, filename='choropleth_full_usa') + ``` + """ + # ensure optional modules imported + if not gp or not shapefile or not shapely: + raise ImportError( + "geopandas, pyshp and shapely must be installed for this figure " + "factory.\n\nRun the following commands in the terminal to " + "ensure that the correct versions of the modules are installed:\n" + "`pip install geopandas==0.3.0`\n" + "`pip install pyshp==1.2.10`\n" + "`pip install shapely==1.6.3`\n" + ) + + df, df_state = _create_us_counties_df(st_to_state_name_dict, + state_to_st_dict) + + fips_polygon_map = dict( + zip( + df['FIPS'].tolist(), + df['geometry'].tolist() + ) + ) + + if not state_outline: + state_outline = {'color': 'rgb(240, 240, 240)', + 'width': 1} + if not county_outline: + county_outline = {'color': 'rgb(0, 0, 0)', + 'width': 0} + if not centroid_marker: + centroid_marker = {'size': 2, + 'color': 'rgb(255, 255, 255)', + 'opacity': 0} + + if len(fips) != len(values): + raise exceptions.PlotlyError( + 'fips and values must be the same length' + ) + + # make fips, values into lists + if isinstance(fips, pd.core.series.Series): + fips = fips.tolist() + if isinstance(values, pd.core.series.Series): + values = values.tolist() + + # make fips numeric + fips = map(lambda x: int(x), fips) + + if binning_endpoints: + intervals = utils.endpts_to_intervals(binning_endpoints) + LEVELS = _intervals_as_labels(intervals, round_legend_values, + exponent_format) + else: + if not order: + LEVELS = sorted(list(set(values))) + else: + # check if order is permutation + # of unique color col values + same_sets = sorted(list(set(values))) == set(order) + no_duplicates = not any(order.count(x) > 1 for x in order) + if same_sets and no_duplicates: + LEVELS = order + else: + raise exceptions.PlotlyError( + 'if you are using a custom order of unique values from ' + 'your color column, you must: have all the unique values ' + 'in your order and have no duplicate items' + ) + + if not colorscale: + colorscale = [] + viridis_colors = colors.colorscale_to_colors( + colors.PLOTLY_SCALES['Viridis'] + ) + viridis_colors = colors.color_parser( + viridis_colors, colors.hex_to_rgb + ) + viridis_colors = colors.color_parser( + viridis_colors, colors.label_rgb + ) + viri_len = len(viridis_colors) + 1 + viri_intervals = utils.endpts_to_intervals( + list(np.linspace(0, 1, viri_len)) + )[1:-1] + + for l in np.linspace(0, 1, len(LEVELS)): + for idx, inter in enumerate(viri_intervals): + if l == 0: + break + elif inter[0] < l <= inter[1]: + break + + intermed = ((l - viri_intervals[idx][0]) / + (viri_intervals[idx][1] - viri_intervals[idx][0])) + + float_color = colors.find_intermediate_color( + viridis_colors[idx], + viridis_colors[idx], + intermed, + colortype='rgb' + ) + + # make R,G,B into int values + float_color = colors.unlabel_rgb(float_color) + float_color = colors.unconvert_from_RGB_255(float_color) + int_rgb = colors.convert_to_RGB_255(float_color) + int_rgb = colors.label_rgb(int_rgb) + + colorscale.append(int_rgb) + + if len(colorscale) < len(LEVELS): + raise exceptions.PlotlyError( + "You have {} LEVELS. Your number of colors in 'colorscale' must " + "be at least the number of LEVELS: {}. If you are " + "using 'binning_endpoints' then 'colorscale' must have at " + "least len(binning_endpoints) + 2 colors".format( + len(LEVELS), min(LEVELS, LEVELS[:20]) + ) + ) + + color_lookup = dict(zip(LEVELS, colorscale)) + x_traces = dict(zip(LEVELS, [[] for i in range(len(LEVELS))])) + y_traces = dict(zip(LEVELS, [[] for i in range(len(LEVELS))])) + + # scope + if isinstance(scope, str): + raise exceptions.PlotlyError( + "'scope' must be a list/tuple/sequence" + ) + + scope_names = [] + extra_states = ['Alaska', 'Commonwealth of the Northern Mariana Islands', + 'Puerto Rico', 'Guam', 'United States Virgin Islands', + 'American Samoa'] + for state in scope: + if state.lower() == 'usa': + scope_names = df['STATE_NAME'].unique() + scope_names = list(scope_names) + for ex_st in extra_states: + try: + scope_names.remove(ex_st) + except ValueError: + pass + else: + if state in st_to_state_name_dict.keys(): + state = st_to_state_name_dict[state] + scope_names.append(state) + df_state = df_state[df_state['STATE_NAME'].isin(scope_names)] + + plot_data = [] + x_centroids = [] + y_centroids = [] + centroid_text = [] + fips_not_in_shapefile = [] + if not binning_endpoints: + for index, f in enumerate(fips): + level = values[index] + try: + fips_polygon_map[f].type + + (x_traces, y_traces, x_centroids, + y_centroids, centroid_text) = _calculations( + df, fips, values, index, f, simplify_county, level, + x_centroids, y_centroids, centroid_text, x_traces, + y_traces, fips_polygon_map + ) + except KeyError: + fips_not_in_shapefile.append(f) + + else: + for index, f in enumerate(fips): + for j, inter in enumerate(intervals): + if inter[0] < values[index] <= inter[1]: + break + level = LEVELS[j] + + try: + fips_polygon_map[f].type + + (x_traces, y_traces, x_centroids, + y_centroids, centroid_text) = _calculations( + df, fips, values, index, f, simplify_county, level, + x_centroids, y_centroids, centroid_text, x_traces, + y_traces, fips_polygon_map + ) + except KeyError: + fips_not_in_shapefile.append(f) + + if len(fips_not_in_shapefile) > 0: + msg = ( + 'Unrecognized FIPS Values\n\nWhoops! It looks like you are ' + 'trying to pass at least one FIPS value that is not in ' + 'our shapefile of FIPS and data for the counties. Your ' + 'choropleth will still show up but these counties cannot ' + 'be shown.\nUnrecognized FIPS are: {}'.format( + fips_not_in_shapefile + ) + ) + warnings.warn(msg) + + x_states = [] + y_states = [] + for index, row in df_state.iterrows(): + if df_state['geometry'][index].type == 'Polygon': + x = row.geometry.simplify(simplify_state).exterior.xy[0].tolist() + y = row.geometry.simplify(simplify_state).exterior.xy[1].tolist() + x_states = x_states + x + y_states = y_states + y + elif df_state['geometry'][index].type == 'MultiPolygon': + x = ([poly.simplify(simplify_state).exterior.xy[0].tolist() for + poly in df_state['geometry'][index]]) + y = ([poly.simplify(simplify_state).exterior.xy[1].tolist() for + poly in df_state['geometry'][index]]) + for segment in range(len(x)): + x_states = x_states + x[segment] + y_states = y_states + y[segment] + x_states.append(np.nan) + y_states.append(np.nan) + x_states.append(np.nan) + y_states.append(np.nan) + + for lev in LEVELS: + county_data = dict( + type='scatter', + mode='lines', + x=x_traces[lev], + y=y_traces[lev], + line=county_outline, + fill='toself', + fillcolor=color_lookup[lev], + name=lev, + hoverinfo='text', + ) + plot_data.append(county_data) + + if show_hover: + hover_points = dict( + type='scatter', + showlegend=False, + legendgroup='centroids', + x=x_centroids, + y=y_centroids, + text=centroid_text, + name='US Counties', + mode='markers', + marker=centroid_marker, + hoverinfo='text' + ) + if offline_mode: + centroids_on_select = dict( + selected=dict( + marker=dict(size=2, color='white', opacity=1) + ), + unselected=dict( + marker=dict(opacity=0) + ) + ) + hover_points.update(centroids_on_select) + plot_data.append(hover_points) + + if show_state_data: + state_data = dict( + type='scatter', + legendgroup='States', + line=state_outline, + x=x_states, + y=y_states, + hoverinfo='text', + showlegend=False, + mode='lines' + ) + plot_data.append(state_data) + + DEFAULT_LAYOUT = dict( + hovermode='closest', + xaxis=dict( + autorange=False, + range=USA_XRANGE, + showgrid=False, + zeroline=False, + fixedrange=True, + showticklabels=False + ), + yaxis=dict( + autorange=False, + range=USA_YRANGE, + showgrid=False, + zeroline=False, + fixedrange=True, + showticklabels=False + ), + margin=dict(t=40, b=20, r=20, l=20), + width=900, + height=450, + dragmode='select', + legend=dict( + traceorder='reversed', + xanchor='right', + yanchor='top', + x=1, + y=1 + ), + annotations=[] + ) + fig = dict(data=plot_data, layout=DEFAULT_LAYOUT) + fig['layout'].update(layout_options) + fig['layout']['annotations'].append( + dict( + x=1, + y=1.05, + xref='paper', + yref='paper', + xanchor='right', + showarrow=False, + text='' + legend_title + '' + ) + ) + + if len(scope) == 1 and scope[0].lower() == 'usa': + xaxis_range_low = -125.0 + xaxis_range_high = -55.0 + yaxis_range_low = 25.0 + yaxis_range_high = 49.0 + else: + xaxis_range_low = float('inf') + xaxis_range_high = float('-inf') + yaxis_range_low = float('inf') + yaxis_range_high = float('-inf') + for trace in fig['data']: + if all(isinstance(n, Number) for n in trace['x']): + calc_x_min = min(trace['x'] or [float('inf')]) + calc_x_max = max(trace['x'] or [float('-inf')]) + if calc_x_min < xaxis_range_low: + xaxis_range_low = calc_x_min + if calc_x_max > xaxis_range_high: + xaxis_range_high = calc_x_max + if all(isinstance(n, Number) for n in trace['y']): + calc_y_min = min(trace['y'] or [float('inf')]) + calc_y_max = max(trace['y'] or [float('-inf')]) + if calc_y_min < yaxis_range_low: + yaxis_range_low = calc_y_min + if calc_y_max > yaxis_range_high: + yaxis_range_high = calc_y_max + + # camera zoom + fig['layout']['xaxis']['range'] = [xaxis_range_low, xaxis_range_high] + fig['layout']['yaxis']['range'] = [yaxis_range_low, yaxis_range_high] + + # aspect ratio + if asp is None: + usa_x_range = USA_XRANGE[1] - USA_XRANGE[0] + usa_y_range = USA_YRANGE[1] - USA_YRANGE[0] + asp = usa_x_range / usa_y_range + + # based on your figure + width = float(fig['layout']['xaxis']['range'][1] - + fig['layout']['xaxis']['range'][0]) + height = float(fig['layout']['yaxis']['range'][1] - + fig['layout']['yaxis']['range'][0]) + + center = (sum(fig['layout']['xaxis']['range']) / 2., + sum(fig['layout']['yaxis']['range']) / 2.) + + if height / width > (1 / asp): + new_width = asp * height + fig['layout']['xaxis']['range'][0] = center[0] - new_width * 0.5 + fig['layout']['xaxis']['range'][1] = center[0] + new_width * 0.5 + else: + new_height = (1 / asp) * width + fig['layout']['yaxis']['range'][0] = center[1] - new_height * 0.5 + fig['layout']['yaxis']['range'][1] = center[1] + new_height * 0.5 + + return fig diff --git a/plotly/figure_factory/utils.py b/plotly/figure_factory/utils.py index f6d4778ab64..ee19e17cef9 100644 --- a/plotly/figure_factory/utils.py +++ b/plotly/figure_factory/utils.py @@ -1,9 +1,11 @@ from __future__ import absolute_import +import collections import decimal from plotly import exceptions + DEFAULT_PLOTLY_COLORS = ['rgb(31, 119, 180)', 'rgb(255, 127, 14)', 'rgb(44, 160, 44)', 'rgb(214, 39, 40)', 'rgb(148, 103, 189)', 'rgb(140, 86, 75)', @@ -33,6 +35,11 @@ } +def is_sequence(obj): + return (isinstance(obj, collections.Sequence) and + not isinstance(obj, str)) + + def validate_index(index_vals): """ Validates if a list contains all numbers or all strings diff --git a/plotly/graph_objs/graph_objs.py b/plotly/graph_objs/graph_objs.py index 5d86d81188a..9f0f6ebd08c 100644 --- a/plotly/graph_objs/graph_objs.py +++ b/plotly/graph_objs/graph_objs.py @@ -806,8 +806,16 @@ class AngularAxis(PlotlyDict): """ Valid attributes for 'angularaxis' at path [] under parents (): - ['domain', 'endpadding', 'range', 'showline', 'showticklabels', - 'tickcolor', 'ticklen', 'tickorientation', 'ticksuffix', 'visible'] + ['categoryarray', 'categoryarraysrc', 'categoryorder', 'color', + 'direction', 'domain', 'dtick', 'endpadding', 'exponentformat', + 'gridcolor', 'gridwidth', 'hoverformat', 'layer', 'linecolor', + 'linewidth', 'nticks', 'period', 'range', 'rotation', + 'separatethousands', 'showexponent', 'showgrid', 'showline', + 'showticklabels', 'showtickprefix', 'showticksuffix', 'thetaunit', + 'tick0', 'tickangle', 'tickcolor', 'tickfont', 'tickformat', + 'tickformatstops', 'ticklen', 'tickmode', 'tickorientation', + 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', 'ticktextsrc', + 'tickvals', 'tickvalssrc', 'tickwidth', 'type', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -820,10 +828,11 @@ class Annotation(PlotlyDict): """ Valid attributes for 'annotation' at path [] under parents (): - ['align', 'arrowcolor', 'arrowhead', 'arrowsize', 'arrowwidth', 'ax', - 'axref', 'ay', 'ayref', 'bgcolor', 'bordercolor', 'borderpad', - 'borderwidth', 'captureevents', 'clicktoshow', 'font', 'height', - 'hoverlabel', 'hovertext', 'opacity', 'ref', 'showarrow', 'standoff', + ['align', 'arrowcolor', 'arrowhead', 'arrowside', 'arrowsize', + 'arrowwidth', 'ax', 'axref', 'ay', 'ayref', 'bgcolor', 'bordercolor', + 'borderpad', 'borderwidth', 'captureevents', 'clicktoshow', 'font', + 'height', 'hoverlabel', 'hovertext', 'opacity', 'ref', 'showarrow', + 'standoff', 'startarrowhead', 'startarrowsize', 'startstandoff', 'text', 'textangle', 'valign', 'visible', 'width', 'x', 'xanchor', 'xclick', 'xref', 'xshift', 'y', 'yanchor', 'yclick', 'yref', 'yshift', 'z'] @@ -850,8 +859,8 @@ class Area(PlotlyDict): ['customdata', 'customdatasrc', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'marker', 'name', - 'opacity', 'r', 'rsrc', 'showlegend', 'stream', 't', 'tsrc', 'type', - 'uid', 'visible'] + 'opacity', 'r', 'rsrc', 'selectedpoints', 'showlegend', 'stream', 't', + 'tsrc', 'type', 'uid', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -869,10 +878,10 @@ class Bar(PlotlyDict): 'hoverinfosrc', 'hoverlabel', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'insidetextfont', 'legendgroup', 'marker', 'name', 'offset', 'offsetsrc', 'opacity', 'orientation', 'outsidetextfont', 'r', 'rsrc', - 'showlegend', 'stream', 't', 'text', 'textfont', 'textposition', - 'textpositionsrc', 'textsrc', 'tsrc', 'type', 'uid', 'visible', - 'width', 'widthsrc', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', 'y', - 'y0', 'yaxis', 'ycalendar', 'ysrc'] + 'selected', 'selectedpoints', 'showlegend', 'stream', 't', 'text', + 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'tsrc', + 'type', 'uid', 'unselected', 'visible', 'width', 'widthsrc', 'x', 'x0', + 'xaxis', 'xcalendar', 'xsrc', 'y', 'y0', 'yaxis', 'ycalendar', 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -887,9 +896,10 @@ class Box(PlotlyDict): ['boxmean', 'boxpoints', 'customdata', 'customdatasrc', 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'ids', 'idssrc', - 'jitter', 'legendgroup', 'line', 'marker', 'name', 'opacity', - 'orientation', 'pointpos', 'showlegend', 'stream', 'text', 'textsrc', - 'type', 'uid', 'visible', 'whiskerwidth', 'x', 'x0', 'xaxis', + 'jitter', 'legendgroup', 'line', 'marker', 'name', 'notched', + 'notchwidth', 'opacity', 'orientation', 'pointpos', 'selected', + 'selectedpoints', 'showlegend', 'stream', 'text', 'textsrc', 'type', + 'uid', 'unselected', 'visible', 'whiskerwidth', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', 'y', 'y0', 'yaxis', 'ycalendar', 'ysrc'] Run `.help('attribute')` on any of the above. @@ -906,9 +916,9 @@ class Candlestick(PlotlyDict): ['close', 'closesrc', 'customdata', 'customdatasrc', 'decreasing', 'high', 'highsrc', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'increasing', 'legendgroup', 'line', 'low', 'lowsrc', 'name', - 'opacity', 'open', 'opensrc', 'showlegend', 'stream', 'text', - 'textsrc', 'type', 'uid', 'visible', 'whiskerwidth', 'x', 'xaxis', - 'xcalendar', 'xsrc', 'yaxis'] + 'opacity', 'open', 'opensrc', 'selectedpoints', 'showlegend', 'stream', + 'text', 'textsrc', 'type', 'uid', 'visible', 'whiskerwidth', 'x', + 'xaxis', 'xcalendar', 'xsrc', 'yaxis'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -924,8 +934,9 @@ class Carpet(PlotlyDict): ['a', 'a0', 'aaxis', 'asrc', 'b', 'b0', 'baxis', 'bsrc', 'carpet', 'cheaterslope', 'color', 'customdata', 'customdatasrc', 'da', 'db', 'font', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', - 'legendgroup', 'name', 'opacity', 'showlegend', 'stream', 'type', - 'uid', 'visible', 'x', 'xaxis', 'xsrc', 'y', 'yaxis', 'ysrc'] + 'legendgroup', 'name', 'opacity', 'selectedpoints', 'showlegend', + 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xsrc', 'y', 'yaxis', + 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -942,8 +953,9 @@ class Choropleth(PlotlyDict): 'customdatasrc', 'geo', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'locationmode', 'locations', 'locationssrc', 'marker', 'name', 'opacity', 'reversescale', - 'showlegend', 'showscale', 'stream', 'text', 'textsrc', 'type', 'uid', - 'visible', 'z', 'zauto', 'zmax', 'zmin', 'zsrc'] + 'selected', 'selectedpoints', 'showlegend', 'showscale', 'stream', + 'text', 'textsrc', 'type', 'uid', 'unselected', 'visible', 'z', + 'zauto', 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -979,12 +991,12 @@ class Contour(PlotlyDict): ['autocolorscale', 'autocontour', 'colorbar', 'colorscale', 'connectgaps', 'contours', 'customdata', 'customdatasrc', 'dx', 'dy', - 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', - 'legendgroup', 'line', 'name', 'ncontours', 'opacity', 'reversescale', - 'showlegend', 'showscale', 'stream', 'text', 'textsrc', 'transpose', - 'type', 'uid', 'visible', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', - 'xtype', 'y', 'y0', 'yaxis', 'ycalendar', 'ysrc', 'ytype', 'z', - 'zauto', 'zhoverformat', 'zmax', 'zmin', 'zsrc'] + 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', + 'idssrc', 'legendgroup', 'line', 'name', 'ncontours', 'opacity', + 'reversescale', 'selectedpoints', 'showlegend', 'showscale', 'stream', + 'text', 'textsrc', 'transpose', 'type', 'uid', 'visible', 'x', 'x0', + 'xaxis', 'xcalendar', 'xsrc', 'xtype', 'y', 'y0', 'yaxis', 'ycalendar', + 'ysrc', 'ytype', 'z', 'zauto', 'zhoverformat', 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -998,13 +1010,13 @@ class Contourcarpet(PlotlyDict): Valid attributes for 'contourcarpet' at path [] under parents (): ['a', 'a0', 'asrc', 'atype', 'autocolorscale', 'autocontour', 'b', - 'b0', 'bsrc', 'btype', 'carpet', 'colorbar', 'colorscale', - 'connectgaps', 'contours', 'customdata', 'customdatasrc', 'da', 'db', - 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', - 'idssrc', 'legendgroup', 'line', 'mode', 'name', 'ncontours', - 'opacity', 'reversescale', 'showlegend', 'showscale', 'stream', 'text', - 'textsrc', 'transpose', 'type', 'uid', 'visible', 'xaxis', 'yaxis', - 'z', 'zauto', 'zmax', 'zmin', 'zsrc'] + 'b0', 'bsrc', 'btype', 'carpet', 'colorbar', 'colorscale', 'contours', + 'customdata', 'customdatasrc', 'da', 'db', 'fillcolor', 'hoverinfo', + 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'line', + 'name', 'ncontours', 'opacity', 'reversescale', 'selectedpoints', + 'showlegend', 'showscale', 'stream', 'text', 'textsrc', 'transpose', + 'type', 'uid', 'visible', 'xaxis', 'yaxis', 'z', 'zauto', 'zmax', + 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1035,8 +1047,8 @@ class Data(PlotlyList): 'Contour', 'Contourcarpet', 'Heatmap', 'Heatmapgl', 'Histogram', 'Histogram2d', 'Histogram2dcontour', 'Mesh3d', 'Ohlc', 'Parcoords', 'Pie', 'Pointcloud', 'Sankey', 'Scatter', 'Scatter3d', 'Scattercarpet', - 'Scattergeo', 'Scattergl', 'Scattermapbox', 'Scatterternary', - 'Surface', 'Table'] + 'Scattergeo', 'Scattergl', 'Scattermapbox', 'Scatterpolar', + 'Scatterpolargl', 'Scatterternary', 'Surface', 'Table', 'Violin'] """ _name = 'data' @@ -1328,11 +1340,11 @@ class Heatmap(PlotlyDict): ['autocolorscale', 'colorbar', 'colorscale', 'connectgaps', 'customdata', 'customdatasrc', 'dx', 'dy', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'name', 'opacity', - 'reversescale', 'showlegend', 'showscale', 'stream', 'text', 'textsrc', - 'transpose', 'type', 'uid', 'visible', 'x', 'x0', 'xaxis', 'xcalendar', - 'xgap', 'xsrc', 'xtype', 'y', 'y0', 'yaxis', 'ycalendar', 'ygap', - 'ysrc', 'ytype', 'z', 'zauto', 'zhoverformat', 'zmax', 'zmin', - 'zsmooth', 'zsrc'] + 'reversescale', 'selectedpoints', 'showlegend', 'showscale', 'stream', + 'text', 'textsrc', 'transpose', 'type', 'uid', 'visible', 'x', 'x0', + 'xaxis', 'xcalendar', 'xgap', 'xsrc', 'xtype', 'y', 'y0', 'yaxis', + 'ycalendar', 'ygap', 'ysrc', 'ytype', 'z', 'zauto', 'zhoverformat', + 'zmax', 'zmin', 'zsmooth', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1348,9 +1360,10 @@ class Heatmapgl(PlotlyDict): ['autocolorscale', 'colorbar', 'colorscale', 'customdata', 'customdatasrc', 'dx', 'dy', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'name', 'opacity', 'reversescale', - 'showlegend', 'showscale', 'stream', 'text', 'textsrc', 'transpose', - 'type', 'uid', 'visible', 'x', 'x0', 'xaxis', 'xsrc', 'xtype', 'y', - 'y0', 'yaxis', 'ysrc', 'ytype', 'z', 'zauto', 'zmax', 'zmin', 'zsrc'] + 'selectedpoints', 'showlegend', 'showscale', 'stream', 'text', + 'textsrc', 'transpose', 'type', 'uid', 'visible', 'x', 'x0', 'xaxis', + 'xsrc', 'xtype', 'y', 'y0', 'yaxis', 'ysrc', 'ytype', 'z', 'zauto', + 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1367,9 +1380,10 @@ class Histogram(PlotlyDict): 'customdatasrc', 'error_x', 'error_y', 'histfunc', 'histnorm', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'marker', 'name', 'nbinsx', 'nbinsy', 'opacity', - 'orientation', 'showlegend', 'stream', 'text', 'textsrc', 'type', - 'uid', 'visible', 'x', 'xaxis', 'xbins', 'xcalendar', 'xsrc', 'y', - 'yaxis', 'ybins', 'ycalendar', 'ysrc'] + 'orientation', 'selected', 'selectedpoints', 'showlegend', 'stream', + 'text', 'textsrc', 'type', 'uid', 'unselected', 'visible', 'x', + 'xaxis', 'xbins', 'xcalendar', 'xsrc', 'y', 'yaxis', 'ybins', + 'ycalendar', 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1385,11 +1399,11 @@ class Histogram2d(PlotlyDict): ['autobinx', 'autobiny', 'autocolorscale', 'colorbar', 'colorscale', 'customdata', 'customdatasrc', 'histfunc', 'histnorm', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'marker', - 'name', 'nbinsx', 'nbinsy', 'opacity', 'reversescale', 'showlegend', - 'showscale', 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbins', - 'xcalendar', 'xgap', 'xsrc', 'y', 'yaxis', 'ybins', 'ycalendar', - 'ygap', 'ysrc', 'z', 'zauto', 'zhoverformat', 'zmax', 'zmin', - 'zsmooth', 'zsrc'] + 'name', 'nbinsx', 'nbinsy', 'opacity', 'reversescale', + 'selectedpoints', 'showlegend', 'showscale', 'stream', 'type', 'uid', + 'visible', 'x', 'xaxis', 'xbins', 'xcalendar', 'xgap', 'xsrc', 'y', + 'yaxis', 'ybins', 'ycalendar', 'ygap', 'ysrc', 'z', 'zauto', + 'zhoverformat', 'zmax', 'zmin', 'zsmooth', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1406,10 +1420,10 @@ class Histogram2dContour(PlotlyDict): 'colorscale', 'contours', 'customdata', 'customdatasrc', 'histfunc', 'histnorm', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', 'name', 'nbinsx', 'nbinsy', - 'ncontours', 'opacity', 'reversescale', 'showlegend', 'showscale', - 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbins', 'xcalendar', - 'xsrc', 'y', 'yaxis', 'ybins', 'ycalendar', 'ysrc', 'z', 'zauto', - 'zhoverformat', 'zmax', 'zmin', 'zsrc'] + 'ncontours', 'opacity', 'reversescale', 'selectedpoints', 'showlegend', + 'showscale', 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbins', + 'xcalendar', 'xsrc', 'y', 'yaxis', 'ybins', 'ycalendar', 'ysrc', 'z', + 'zauto', 'zhoverformat', 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1426,10 +1440,10 @@ class Histogram2dcontour(PlotlyDict): 'colorscale', 'contours', 'customdata', 'customdatasrc', 'histfunc', 'histnorm', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', 'name', 'nbinsx', 'nbinsy', - 'ncontours', 'opacity', 'reversescale', 'showlegend', 'showscale', - 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbins', 'xcalendar', - 'xsrc', 'y', 'yaxis', 'ybins', 'ycalendar', 'ysrc', 'z', 'zauto', - 'zhoverformat', 'zmax', 'zmin', 'zsrc'] + 'ncontours', 'opacity', 'reversescale', 'selectedpoints', 'showlegend', + 'showscale', 'stream', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbins', + 'xcalendar', 'xsrc', 'y', 'yaxis', 'ybins', 'ycalendar', 'ysrc', 'z', + 'zauto', 'zhoverformat', 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1444,12 +1458,14 @@ class Layout(PlotlyDict): ['angularaxis', 'annotations', 'autosize', 'bargap', 'bargroupgap', 'barmode', 'barnorm', 'boxgap', 'boxgroupgap', 'boxmode', 'calendar', - 'direction', 'dragmode', 'font', 'geo', 'height', 'hiddenlabels', - 'hiddenlabelssrc', 'hidesources', 'hoverlabel', 'hovermode', 'images', - 'legend', 'mapbox', 'margin', 'orientation', 'paper_bgcolor', - 'plot_bgcolor', 'radialaxis', 'scene', 'separators', 'shapes', - 'showlegend', 'sliders', 'ternary', 'title', 'titlefont', - 'updatemenus', 'width', 'xaxis', 'yaxis'] + 'colorway', 'datarevision', 'direction', 'dragmode', 'font', 'geo', + 'height', 'hiddenlabels', 'hiddenlabelssrc', 'hidesources', + 'hoverdistance', 'hoverlabel', 'hovermode', 'images', 'legend', + 'mapbox', 'margin', 'orientation', 'paper_bgcolor', 'plot_bgcolor', + 'polar', 'radialaxis', 'scene', 'separators', 'shapes', 'showlegend', + 'sliders', 'spikedistance', 'ternary', 'title', 'titlefont', + 'updatemenus', 'violingap', 'violingroupgap', 'violinmode', 'width', + 'xaxis', 'yaxis'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1528,9 +1544,10 @@ class Mesh3d(PlotlyDict): 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'i', 'ids', 'idssrc', 'intensity', 'intensitysrc', 'isrc', 'j', 'jsrc', 'k', 'ksrc', 'legendgroup', 'lighting', 'lightposition', 'name', 'opacity', - 'reversescale', 'scene', 'showlegend', 'showscale', 'stream', 'type', - 'uid', 'vertexcolor', 'vertexcolorsrc', 'visible', 'x', 'xcalendar', - 'xsrc', 'y', 'ycalendar', 'ysrc', 'z', 'zcalendar', 'zsrc'] + 'reversescale', 'scene', 'selectedpoints', 'showlegend', 'showscale', + 'stream', 'text', 'textsrc', 'type', 'uid', 'vertexcolor', + 'vertexcolorsrc', 'visible', 'x', 'xcalendar', 'xsrc', 'y', + 'ycalendar', 'ysrc', 'z', 'zcalendar', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1546,8 +1563,8 @@ class Ohlc(PlotlyDict): ['close', 'closesrc', 'customdata', 'customdatasrc', 'decreasing', 'high', 'highsrc', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'increasing', 'legendgroup', 'line', 'low', 'lowsrc', 'name', - 'opacity', 'open', 'opensrc', 'showlegend', 'stream', 'text', - 'textsrc', 'tickwidth', 'type', 'uid', 'visible', 'x', 'xaxis', + 'opacity', 'open', 'opensrc', 'selectedpoints', 'showlegend', 'stream', + 'text', 'textsrc', 'tickwidth', 'type', 'uid', 'visible', 'x', 'xaxis', 'xcalendar', 'xsrc', 'yaxis'] Run `.help('attribute')` on any of the above. @@ -1563,8 +1580,9 @@ class Parcoords(PlotlyDict): ['customdata', 'customdatasrc', 'dimensions', 'domain', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'labelfont', - 'legendgroup', 'line', 'name', 'opacity', 'rangefont', 'showlegend', - 'stream', 'tickfont', 'type', 'uid', 'visible'] + 'legendgroup', 'line', 'name', 'opacity', 'rangefont', + 'selectedpoints', 'showlegend', 'stream', 'tickfont', 'type', 'uid', + 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1582,9 +1600,9 @@ class Pie(PlotlyDict): 'hovertextsrc', 'ids', 'idssrc', 'insidetextfont', 'label0', 'labels', 'labelssrc', 'legendgroup', 'marker', 'name', 'opacity', 'outsidetextfont', 'pull', 'pullsrc', 'rotation', 'scalegroup', - 'showlegend', 'sort', 'stream', 'text', 'textfont', 'textinfo', - 'textposition', 'textpositionsrc', 'textsrc', 'type', 'uid', 'values', - 'valuessrc', 'visible'] + 'selectedpoints', 'showlegend', 'sort', 'stream', 'text', 'textfont', + 'textinfo', 'textposition', 'textpositionsrc', 'textsrc', 'type', + 'uid', 'values', 'valuessrc', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1599,9 +1617,10 @@ class Pointcloud(PlotlyDict): ['customdata', 'customdatasrc', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'indices', 'indicessrc', 'legendgroup', - 'marker', 'name', 'opacity', 'showlegend', 'stream', 'text', 'textsrc', - 'type', 'uid', 'visible', 'x', 'xaxis', 'xbounds', 'xboundssrc', - 'xsrc', 'xy', 'xysrc', 'y', 'yaxis', 'ybounds', 'yboundssrc', 'ysrc'] + 'marker', 'name', 'opacity', 'selectedpoints', 'showlegend', 'stream', + 'text', 'textsrc', 'type', 'uid', 'visible', 'x', 'xaxis', 'xbounds', + 'xboundssrc', 'xsrc', 'xy', 'xysrc', 'y', 'yaxis', 'ybounds', + 'yboundssrc', 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1614,9 +1633,17 @@ class RadialAxis(PlotlyDict): """ Valid attributes for 'radialaxis' at path [] under parents (): - ['domain', 'endpadding', 'orientation', 'range', 'showline', - 'showticklabels', 'tickcolor', 'ticklen', 'tickorientation', - 'ticksuffix', 'visible'] + ['angle', 'autorange', 'calendar', 'categoryarray', 'categoryarraysrc', + 'categoryorder', 'color', 'domain', 'dtick', 'endpadding', + 'exponentformat', 'gridcolor', 'gridwidth', 'hoverformat', 'layer', + 'linecolor', 'linewidth', 'nticks', 'orientation', 'range', + 'rangemode', 'separatethousands', 'showexponent', 'showgrid', + 'showline', 'showticklabels', 'showtickprefix', 'showticksuffix', + 'side', 'tick0', 'tickangle', 'tickcolor', 'tickfont', 'tickformat', + 'tickformatstops', 'ticklen', 'tickmode', 'tickorientation', + 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', 'ticktextsrc', + 'tickvals', 'tickvalssrc', 'tickwidth', 'title', 'titlefont', 'type', + 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1631,8 +1658,9 @@ class Sankey(PlotlyDict): ['arrangement', 'customdata', 'customdatasrc', 'domain', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'link', - 'name', 'node', 'opacity', 'orientation', 'showlegend', 'stream', - 'textfont', 'type', 'uid', 'valueformat', 'valuesuffix', 'visible'] + 'name', 'node', 'opacity', 'orientation', 'selectedpoints', + 'showlegend', 'stream', 'textfont', 'type', 'uid', 'valueformat', + 'valuesuffix', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1649,10 +1677,10 @@ class Scatter(PlotlyDict): 'dy', 'error_x', 'error_y', 'fill', 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', 'mode', 'name', - 'opacity', 'r', 'rsrc', 'showlegend', 'stream', 't', 'text', - 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'tsrc', - 'type', 'uid', 'visible', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', 'y', - 'y0', 'yaxis', 'ycalendar', 'ysrc'] + 'opacity', 'r', 'rsrc', 'selected', 'selectedpoints', 'showlegend', + 'stream', 't', 'text', 'textfont', 'textposition', 'textpositionsrc', + 'textsrc', 'tsrc', 'type', 'uid', 'unselected', 'visible', 'x', 'x0', + 'xaxis', 'xcalendar', 'xsrc', 'y', 'y0', 'yaxis', 'ycalendar', 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1668,11 +1696,11 @@ class Scatter3d(PlotlyDict): ['connectgaps', 'customdata', 'customdatasrc', 'error_x', 'error_y', 'error_z', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', - 'mode', 'name', 'opacity', 'projection', 'scene', 'showlegend', - 'stream', 'surfaceaxis', 'surfacecolor', 'text', 'textfont', - 'textposition', 'textpositionsrc', 'textsrc', 'type', 'uid', 'visible', - 'x', 'xcalendar', 'xsrc', 'y', 'ycalendar', 'ysrc', 'z', 'zcalendar', - 'zsrc'] + 'mode', 'name', 'opacity', 'projection', 'scene', 'selectedpoints', + 'showlegend', 'stream', 'surfaceaxis', 'surfacecolor', 'text', + 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'type', + 'uid', 'visible', 'x', 'xcalendar', 'xsrc', 'y', 'ycalendar', 'ysrc', + 'z', 'zcalendar', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1688,9 +1716,10 @@ class Scattercarpet(PlotlyDict): ['a', 'asrc', 'b', 'bsrc', 'carpet', 'connectgaps', 'customdata', 'customdatasrc', 'fill', 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'ids', 'idssrc', 'legendgroup', 'line', - 'marker', 'mode', 'name', 'opacity', 'showlegend', 'stream', 'text', - 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'type', - 'uid', 'visible', 'xaxis', 'yaxis'] + 'marker', 'mode', 'name', 'opacity', 'selected', 'selectedpoints', + 'showlegend', 'stream', 'text', 'textfont', 'textposition', + 'textpositionsrc', 'textsrc', 'type', 'uid', 'unselected', 'visible', + 'xaxis', 'yaxis'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1707,9 +1736,9 @@ class Scattergeo(PlotlyDict): 'geo', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'lat', 'latsrc', 'legendgroup', 'line', 'locationmode', 'locations', 'locationssrc', 'lon', 'lonsrc', - 'marker', 'mode', 'name', 'opacity', 'showlegend', 'stream', 'text', - 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'type', - 'uid', 'visible'] + 'marker', 'mode', 'name', 'opacity', 'selected', 'selectedpoints', + 'showlegend', 'stream', 'text', 'textfont', 'textposition', + 'textpositionsrc', 'textsrc', 'type', 'uid', 'unselected', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1724,10 +1753,11 @@ class Scattergl(PlotlyDict): ['connectgaps', 'customdata', 'customdatasrc', 'dx', 'dy', 'error_x', 'error_y', 'fill', 'fillcolor', 'hoverinfo', 'hoverinfosrc', - 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', 'mode', - 'name', 'opacity', 'showlegend', 'stream', 'text', 'textsrc', 'type', - 'uid', 'visible', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', 'y', 'y0', - 'yaxis', 'ycalendar', 'ysrc'] + 'hoverlabel', 'hoveron', 'ids', 'idssrc', 'legendgroup', 'line', + 'marker', 'mode', 'name', 'opacity', 'selected', 'selectedpoints', + 'showlegend', 'stream', 'text', 'textsrc', 'type', 'uid', 'unselected', + 'visible', 'x', 'x0', 'xaxis', 'xcalendar', 'xsrc', 'y', 'y0', 'yaxis', + 'ycalendar', 'ysrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1743,9 +1773,10 @@ class Scattermapbox(PlotlyDict): ['connectgaps', 'customdata', 'customdatasrc', 'fill', 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'lat', 'latsrc', 'legendgroup', 'line', 'lon', - 'lonsrc', 'marker', 'mode', 'name', 'opacity', 'showlegend', 'stream', - 'subplot', 'text', 'textfont', 'textposition', 'textsrc', 'type', - 'uid', 'visible'] + 'lonsrc', 'marker', 'mode', 'name', 'opacity', 'selected', + 'selectedpoints', 'showlegend', 'stream', 'subplot', 'text', + 'textfont', 'textposition', 'textsrc', 'type', 'uid', 'unselected', + 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1754,6 +1785,43 @@ class Scattermapbox(PlotlyDict): _name = 'scattermapbox' +class Scatterpolar(PlotlyDict): + """ + Valid attributes for 'scatterpolar' at path [] under parents (): + + ['cliponaxis', 'connectgaps', 'customdata', 'customdatasrc', 'fill', + 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', + 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'legendgroup', 'line', + 'marker', 'mode', 'name', 'opacity', 'r', 'rsrc', 'selected', + 'selectedpoints', 'showlegend', 'stream', 'subplot', 'text', + 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'theta', + 'thetasrc', 'thetaunit', 'type', 'uid', 'unselected', 'visible'] + + Run `.help('attribute')` on any of the above. + '' is the object at [] + + """ + _name = 'scatterpolar' + + +class Scatterpolargl(PlotlyDict): + """ + Valid attributes for 'scatterpolargl' at path [] under parents (): + + ['connectgaps', 'customdata', 'customdatasrc', 'fill', 'fillcolor', + 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'ids', 'idssrc', + 'legendgroup', 'line', 'marker', 'mode', 'name', 'opacity', 'r', + 'rsrc', 'selected', 'selectedpoints', 'showlegend', 'stream', + 'subplot', 'text', 'textsrc', 'theta', 'thetasrc', 'thetaunit', 'type', + 'uid', 'unselected', 'visible'] + + Run `.help('attribute')` on any of the above. + '' is the object at [] + + """ + _name = 'scatterpolargl' + + class Scatterternary(PlotlyDict): """ Valid attributes for 'scatterternary' at path [] under parents (): @@ -1762,9 +1830,9 @@ class Scatterternary(PlotlyDict): 'customdata', 'customdatasrc', 'fill', 'fillcolor', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'hovertext', 'hovertextsrc', 'ids', 'idssrc', 'legendgroup', 'line', 'marker', 'mode', 'name', - 'opacity', 'showlegend', 'stream', 'subplot', 'sum', 'text', - 'textfont', 'textposition', 'textpositionsrc', 'textsrc', 'type', - 'uid', 'visible'] + 'opacity', 'selected', 'selectedpoints', 'showlegend', 'stream', + 'subplot', 'sum', 'text', 'textfont', 'textposition', + 'textpositionsrc', 'textsrc', 'type', 'uid', 'unselected', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1809,10 +1877,10 @@ class Surface(PlotlyDict): 'contours', 'customdata', 'customdatasrc', 'hidesurface', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', 'legendgroup', 'lighting', 'lightposition', 'name', 'opacity', 'reversescale', - 'scene', 'showlegend', 'showscale', 'stream', 'surfacecolor', - 'surfacecolorsrc', 'text', 'textsrc', 'type', 'uid', 'visible', 'x', - 'xcalendar', 'xsrc', 'y', 'ycalendar', 'ysrc', 'z', 'zauto', - 'zcalendar', 'zmax', 'zmin', 'zsrc'] + 'scene', 'selectedpoints', 'showlegend', 'showscale', 'stream', + 'surfacecolor', 'surfacecolorsrc', 'text', 'textsrc', 'type', 'uid', + 'visible', 'x', 'xcalendar', 'xsrc', 'y', 'ycalendar', 'ysrc', 'z', + 'zauto', 'zcalendar', 'zmax', 'zmin', 'zsrc'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1828,8 +1896,8 @@ class Table(PlotlyDict): ['cells', 'columnorder', 'columnordersrc', 'columnwidth', 'columnwidthsrc', 'customdata', 'customdatasrc', 'domain', 'header', 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'ids', 'idssrc', - 'legendgroup', 'name', 'opacity', 'showlegend', 'stream', 'type', - 'uid', 'visible'] + 'legendgroup', 'name', 'opacity', 'selectedpoints', 'showlegend', + 'stream', 'type', 'uid', 'visible'] Run `.help('attribute')` on any of the above. '' is the object at [] @@ -1842,6 +1910,26 @@ class Trace(dict): pass +class Violin(PlotlyDict): + """ + Valid attributes for 'violin' at path [] under parents (): + + ['bandwidth', 'box', 'customdata', 'customdatasrc', 'fillcolor', + 'hoverinfo', 'hoverinfosrc', 'hoverlabel', 'hoveron', 'ids', 'idssrc', + 'jitter', 'legendgroup', 'line', 'marker', 'meanline', 'name', + 'opacity', 'orientation', 'pointpos', 'points', 'scalegroup', + 'scalemode', 'selected', 'selectedpoints', 'showlegend', 'side', + 'span', 'spanmode', 'stream', 'text', 'textsrc', 'type', 'uid', + 'unselected', 'visible', 'x', 'x0', 'xaxis', 'xsrc', 'y', 'y0', + 'yaxis', 'ysrc'] + + Run `.help('attribute')` on any of the above. + '' is the object at [] + + """ + _name = 'violin' + + class XAxis(PlotlyDict): """ Valid attributes for 'xaxis' at path [] under parents (): @@ -1855,9 +1943,9 @@ class XAxis(PlotlyDict): 'scaleratio', 'separatethousands', 'showaxeslabels', 'showbackground', 'showexponent', 'showgrid', 'showline', 'showspikes', 'showticklabels', 'showtickprefix', 'showticksuffix', 'side', 'spikecolor', 'spikedash', - 'spikemode', 'spikesides', 'spikethickness', 'tick0', 'tickangle', - 'tickcolor', 'tickfont', 'tickformat', 'tickformatstops', 'ticklen', - 'tickmode', 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', + 'spikemode', 'spikesides', 'spikesnap', 'spikethickness', 'tick0', + 'tickangle', 'tickcolor', 'tickfont', 'tickformat', 'tickformatstops', + 'ticklen', 'tickmode', 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', 'ticktextsrc', 'tickvals', 'tickvalssrc', 'tickwidth', 'title', 'titlefont', 'type', 'visible', 'zeroline', 'zerolinecolor', 'zerolinewidth'] @@ -1895,11 +1983,12 @@ class YAxis(PlotlyDict): 'showaxeslabels', 'showbackground', 'showexponent', 'showgrid', 'showline', 'showspikes', 'showticklabels', 'showtickprefix', 'showticksuffix', 'side', 'spikecolor', 'spikedash', 'spikemode', - 'spikesides', 'spikethickness', 'tick0', 'tickangle', 'tickcolor', - 'tickfont', 'tickformat', 'tickformatstops', 'ticklen', 'tickmode', - 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', 'ticktextsrc', - 'tickvals', 'tickvalssrc', 'tickwidth', 'title', 'titlefont', 'type', - 'visible', 'zeroline', 'zerolinecolor', 'zerolinewidth'] + 'spikesides', 'spikesnap', 'spikethickness', 'tick0', 'tickangle', + 'tickcolor', 'tickfont', 'tickformat', 'tickformatstops', 'ticklen', + 'tickmode', 'tickprefix', 'ticks', 'ticksuffix', 'ticktext', + 'ticktextsrc', 'tickvals', 'tickvalssrc', 'tickwidth', 'title', + 'titlefont', 'type', 'visible', 'zeroline', 'zerolinecolor', + 'zerolinewidth'] Run `.help('attribute')` on any of the above. '' is the object at [] diff --git a/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf new file mode 100644 index 00000000000..1ef3b1499fe Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf differ diff --git a/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp new file mode 100644 index 00000000000..45b3f041f32 Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp differ diff --git a/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx new file mode 100644 index 00000000000..715e770c755 Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx differ diff --git a/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf new file mode 100755 index 00000000000..c3e3b13e212 Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf differ diff --git a/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp new file mode 100755 index 00000000000..f2a32cd6a2f Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp differ diff --git a/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx new file mode 100755 index 00000000000..95347eb02db Binary files /dev/null and b/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx differ diff --git a/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf new file mode 100755 index 00000000000..8397f541eca Binary files /dev/null and b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf differ diff --git a/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp new file mode 100755 index 00000000000..a1177e7b3ca Binary files /dev/null and b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp differ diff --git a/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx new file mode 100755 index 00000000000..85675d9254e Binary files /dev/null and b/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx differ diff --git a/plotly/package_data/default-schema.json b/plotly/package_data/default-schema.json index 70ed7a15620..6038074bc67 100644 --- a/plotly/package_data/default-schema.json +++ b/plotly/package_data/default-schema.json @@ -179,8 +179,15 @@ ], "requiredOpts": [] }, + "colorlist": { + "description": "A list of colors. Must be an {array} containing valid colors.", + "otherOpts": [ + "dflt" + ], + "requiredOpts": [] + }, "colorscale": { - "description": "A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at *0* and ending at *1*), and the second item is a valid color string.", + "description": "A Plotly colorscale either picked by a name: (any of Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis ) customized as an {array} of 2-element {arrays} where the first element is the normalized color level value (starting at *0* and ending at *1*), and the second item is a valid color string.", "otherOpts": [ "dflt" ], @@ -433,7 +440,7 @@ "valType": "color" }, "arrowhead": { - "description": "Sets the annotation arrow head style.", + "description": "Sets the end annotation arrow head style.", "dflt": 1, "editType": "arraydraw", "max": 8, @@ -441,24 +448,38 @@ "role": "style", "valType": "integer" }, + "arrowside": { + "description": "Sets the annotation arrow head position.", + "dflt": "end", + "editType": "arraydraw", + "extras": [ + "none" + ], + "flags": [ + "end", + "start" + ], + "role": "style", + "valType": "flaglist" + }, "arrowsize": { - "description": "Sets the size of the annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", "dflt": 1, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 0.3, "role": "style", "valType": "number" }, "arrowwidth": { "description": "Sets the width (in px) of annotation arrow line.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 0.1, "role": "style", "valType": "number" }, "ax": { "description": "Sets the x component of the arrow tail about the arrow head. If `axref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from right to left (left to right). If `axref` is an axis, this is an absolute value on that axis, like `x`, NOT a relative value.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "any" }, @@ -475,7 +496,7 @@ }, "ay": { "description": "Sets the y component of the arrow tail about the arrow head. If `ayref` is `pixel`, a positive (negative) component corresponds to an arrow pointing from bottom to top (top to bottom). If `ayref` is an axis, this is an absolute value on that axis, like `y`, NOT a relative value.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "any" }, @@ -507,7 +528,7 @@ "borderpad": { "description": "Sets the padding (in px) between the `text` and the enclosing border.", "dflt": 1, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 0, "role": "style", "valType": "number" @@ -515,7 +536,7 @@ "borderwidth": { "description": "Sets the width (in px) of the border enclosing the annotation `text`.", "dflt": 1, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 0, "role": "style", "valType": "number" @@ -546,10 +567,10 @@ "valType": "color" }, "description": "Sets the annotation text font.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "noBlank": true, "role": "style", "strict": true, @@ -557,7 +578,7 @@ }, "role": "object", "size": { - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 1, "role": "style", "valType": "number" @@ -566,7 +587,7 @@ "height": { "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", "dflt": null, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 1, "role": "style", "valType": "number" @@ -630,28 +651,53 @@ "showarrow": { "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", "dflt": true, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "style", "valType": "boolean" }, "standoff": { - "description": "Sets a distance, in pixels, to move the arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calcIfAutorange+arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, + "startarrowhead": { + "description": "Sets the start annotation arrow head style.", + "dflt": 1, + "editType": "arraydraw", + "max": 8, + "min": 0, + "role": "style", + "valType": "integer" + }, + "startarrowsize": { + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calcIfAutorange+arraydraw", + "min": 0.3, + "role": "style", + "valType": "number" + }, + "startstandoff": { + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", "dflt": 0, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 0, "role": "style", "valType": "number" }, "text": { "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (
), bold (), italics (), hyperlinks (). Tags , , are also supported.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "string" }, "textangle": { "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", "dflt": 0, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "style", "valType": "angle" }, @@ -670,28 +716,28 @@ "visible": { "description": "Determines whether or not this annotation is visible.", "dflt": true, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "boolean" }, "width": { "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", "dflt": null, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "min": 1, "role": "style", "valType": "number" }, "x": { "description": "Sets the annotation's x position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "any" }, "xanchor": { "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", "dflt": "auto", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "enumerated", "values": [ @@ -720,20 +766,20 @@ "xshift": { "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", "dflt": 0, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "style", "valType": "number" }, "y": { "description": "Sets the annotation's y position. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "any" }, "yanchor": { "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", "dflt": "auto", - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "info", "valType": "enumerated", "values": [ @@ -762,7 +808,7 @@ "yshift": { "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", "dflt": 0, - "editType": "calcIfAutorange", + "editType": "calcIfAutorange+arraydraw", "role": "style", "valType": "number" } @@ -802,6 +848,30 @@ "ummalqura" ] }, + "colorway": { + "description": "Sets the default trace colors.", + "dflt": [ + "#1f77b4", + "#ff7f0e", + "#2ca02c", + "#d62728", + "#9467bd", + "#8c564b", + "#e377c2", + "#7f7f7f", + "#bcbd22", + "#17becf" + ], + "editType": "calc", + "role": "style", + "valType": "colorlist" + }, + "datarevision": { + "description": "If provided, a changed value tells `Plotly.react` that one or more data arrays has changed. This way you can modify arrays in-place rather than making a complete new copy for an incremental change. If NOT provided, `Plotly.react` assumes that data arrays are being treated as immutable, thus any data array with a different identity from its predecessor contains new data.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "direction": { "description": "For polar plots only. Sets the direction corresponding to positive angles.", "editType": "plot", @@ -914,7 +984,7 @@ "editType": "plot", "role": "object", "x": { - "description": "Sets the maximum horizontal domain of this map (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. ", + "description": "Sets the horizontal domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", "dflt": [ 0, 1 @@ -938,7 +1008,7 @@ "valType": "info_array" }, "y": { - "description": "Sets the maximum vertical domain of this map (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both. ", + "description": "Sets the vertical domain of this geo subplot (in plot fraction). Note that geo subplots are constrained by domain. In general, when `projection.scale` is set to 1. a map will fit either its x or y domain, but not both.", "dflt": [ 0, 1 @@ -1314,6 +1384,14 @@ "role": "info", "valType": "boolean" }, + "hoverdistance": { + "description": "Sets the default distance (in pixels) to look for data to add hover labels (-1 means no cutoff, 0 means no looking for data)", + "dflt": 20, + "editType": "none", + "min": -1, + "role": "info", + "valType": "integer" + }, "hoverlabel": { "bgcolor": { "description": "Sets the background color of all hover labels on graph", @@ -1671,7 +1749,7 @@ "editType": "plot", "role": "object", "x": { - "description": "Sets the horizontal domain of this subplot (in plot fraction).", + "description": "Sets the horizontal domain of this mapbox subplot (in plot fraction).", "dflt": [ 0, 1 @@ -1695,7 +1773,7 @@ "valType": "info_array" }, "y": { - "description": "Sets the vertical domain of this subplot (in plot fraction).", + "description": "Sets the vertical domain of this mapbox subplot (in plot fraction).", "dflt": [ 0, 1 @@ -1993,554 +2071,420 @@ "role": "style", "valType": "color" }, - "radialaxis": { - "domain": { - "description": "Polar chart subplots are not supported yet. This key has currently no effect.", - "dflt": [ - 0, - 1 - ], + "polar": { + "_isSubplotObj": true, + "angularaxis": { + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "direction": { + "description": "Sets the direction corresponding to positive angles.", + "dflt": "counterclockwise", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "counterclockwise", + "clockwise" + ] + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "none", + "role": "style", + "valType": "string" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "integer" + }, + "period": { + "description": "Set the angular period. Has an effect only when `angularaxis.type` is *category*.", + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "role": "object", + "rotation": { + "description": "Sets that start position (in degrees) of the angular axis By default, polar subplots with `direction` set to *counterclockwise* get a `rotation` of *0* which corresponds to due East (like what mathematicians prefer). In turn, polar with `direction` set to *clockwise* get a rotation of *90* which corresponds to due North (like on a compass),", + "editType": "calc", + "role": "info", + "valType": "angle" + }, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thetaunit": { + "description": "Sets the format unit of the formatted *theta* values. Has an effect only when `angularaxis.type` is *linear*.", + "dflt": "degrees", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "radians", + "degrees" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" }, - { + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "plot", - "endpadding": { - "editType": "plot", - "role": "style", - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation (an angle with respect to the origin) of the radial axis.", - "editType": "plot", - "role": "style", - "valType": "number" - }, - "range": { - "description": "Defines the start and end point of this radial axis.", - "editType": "plot", - "items": [ - { + "role": "style", + "valType": "color" + }, + "description": "Sets the tick font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "plot", - "valType": "number" + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" }, - { + "role": "object", + "size": { "editType": "plot", + "min": 1, + "role": "style", "valType": "number" } - ], - "role": "info", - "valType": "info_array" - }, - "role": "object", - "showline": { - "description": "Determines whether or not the line bounding this radial axis will be shown on the figure.", - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the radial axis ticks will feature tick labels.", - "editType": "plot", - "role": "style", - "valType": "boolean" + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "plot", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "type": { + "description": "Sets the angular axis type. If *linear*, set `thetaunit` to determine the unit in which axis value are shown. If *category, use `period` to set the number of integer coordinates around polar axis.", + "dflt": "-", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "-", + "linear", + "category" + ] + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + } }, - "tickcolor": { - "description": "Sets the color of the tick lines on this radial axis.", + "bgcolor": { + "description": "Set the background color of the subplot", + "dflt": "#fff", "editType": "plot", "role": "style", "valType": "color" }, - "ticklen": { - "description": "Sets the length of the tick lines on this radial axis.", - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "tickorientation": { - "description": "Sets the orientation (from the paper perspective) of the radial axis tick labels.", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "horizontal", - "vertical" - ] - }, - "ticksuffix": { - "description": "Sets the length of the tick lines on this radial axis.", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this axis will be visible.", - "editType": "plot", - "role": "info", - "valType": "boolean" - } - }, - "scene": { - "_arrayAttrRegexps": [ - {} - ], - "_deprecated": { - "cameraposition": { - "description": "Obsolete. Use `camera` instead.", - "editType": "camera", - "role": "info", - "valType": "info_array" - } - }, - "_isSubplotObj": true, - "annotations": { - "items": { - "annotation": { - "align": { - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "arrowcolor": { - "description": "Sets the color of the annotation arrow.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "arrowhead": { - "description": "Sets the annotation arrow head style.", - "dflt": 1, - "editType": "calc", - "max": 8, - "min": 0, - "role": "style", - "valType": "integer" - }, - "arrowsize": { - "description": "Sets the size of the annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", - "dflt": 1, - "editType": "calc", - "min": 0.3, - "role": "style", - "valType": "number" - }, - "arrowwidth": { - "description": "Sets the width (in px) of annotation arrow line.", - "editType": "calc", - "min": 0.1, - "role": "style", - "valType": "number" - }, - "ax": { - "description": "Sets the x component of the arrow tail about the arrow head (in pixels).", - "editType": "calc", - "role": "info", - "valType": "number" - }, - "ay": { - "description": "Sets the y component of the arrow tail about the arrow head (in pixels).", - "editType": "calc", - "role": "info", - "valType": "number" - }, - "bgcolor": { - "description": "Sets the background color of the annotation.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the annotation `text`.", - "dflt": "rgba(0,0,0,0)", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "borderpad": { - "description": "Sets the padding (in px) between the `text` and the enclosing border.", - "dflt": 1, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the annotation `text`.", - "dflt": 1, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "captureevents": { - "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "role": "style", - "valType": "color" - }, - "description": "Sets the annotation text font.", - "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "height": { - "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", - "dflt": null, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "hoverlabel": { - "bgcolor": { - "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "editType": "calc", - "font": { - "color": { - "editType": "calc", - "role": "style", - "valType": "color" - }, - "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", - "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "role": "object" - }, - "hovertext": { - "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the annotation (text + arrow).", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "role": "object", - "showarrow": { - "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", - "dflt": true, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "standoff": { - "description": "Sets a distance, in pixels, to move the arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "text": { - "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (
), bold (), italics (), hyperlinks (). Tags , , are also supported.", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "textangle": { - "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", - "dflt": 0, - "editType": "calc", - "role": "style", - "valType": "angle" - }, - "valign": { - "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", - "dflt": "middle", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "visible": { - "description": "Determines whether or not this annotation is visible.", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", - "dflt": null, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "x": { - "description": "Sets the annotation's x position.", - "editType": "calc", - "role": "info", - "valType": "any" - }, - "xanchor": { - "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "xshift": { - "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", - "dflt": 0, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "y": { - "description": "Sets the annotation's y position.", - "editType": "calc", - "role": "info", - "valType": "any" - }, - "yanchor": { - "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", - "dflt": "auto", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - }, - "yshift": { - "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", - "dflt": 0, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "z": { - "description": "Sets the annotation's z position.", - "editType": "calc", - "role": "info", - "valType": "any" - } - } - }, - "role": "object" - }, - "aspectmode": { - "description": "If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used.", - "dflt": "auto", - "editType": "plot", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "cube", - "data", - "manual" - ] - }, - "aspectratio": { - "description": "Sets this scene's axis aspectratio.", - "editType": "plot", - "impliedEdits": { - "aspectmode": "manual", - "role": "object" - }, - "role": "object", - "x": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "role": "info", - "valType": "number" - }, - "y": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "role": "info", - "valType": "number" - }, - "z": { - "editType": "plot", - "impliedEdits": { - "^aspectmode": "manual" - }, - "min": 0, - "role": "info", - "valType": "number" - } - }, - "bgcolor": { - "dflt": "rgba(0,0,0,0)", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "camera": { - "center": { - "description": "Sets the (x,y,z) components of the 'center' camera vector This vector determines the translation (x,y,z) space about the center of this scene. By default, there is no such translation.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 0, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "y": { - "dflt": 0, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "z": { - "dflt": 0, - "editType": "camera", - "role": "info", - "valType": "number" - } - }, - "editType": "camera", - "eye": { - "description": "Sets the (x,y,z) components of the 'eye' camera vector. This vector determines the view point about the origin of this scene.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 1.25, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "y": { - "dflt": 1.25, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "z": { - "dflt": 1.25, - "editType": "camera", - "role": "info", - "valType": "number" - } - }, - "role": "object", - "up": { - "description": "Sets the (x,y,z) components of the 'up' camera vector. This vector determines the up direction of this scene with respect to the page. The default is *{x: 0, y: 0, z: 1}* which means that the z axis points up.", - "editType": "camera", - "role": "object", - "x": { - "dflt": 0, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "y": { - "dflt": 0, - "editType": "camera", - "role": "info", - "valType": "number" - }, - "z": { - "dflt": 1, - "editType": "camera", - "role": "info", - "valType": "number" - } - } - }, - "domain": { + "domain": { "editType": "plot", "role": "object", "x": { - "description": "Sets the horizontal domain of this scene (in plot fraction).", + "description": "Sets the horizontal domain of this polar subplot (in plot fraction).", "dflt": [ 0, 1 @@ -2548,13 +2492,11 @@ "editType": "plot", "items": [ { - "editType": "plot", "max": 1, "min": 0, "valType": "number" }, { - "editType": "plot", "max": 1, "min": 0, "valType": "number" @@ -2564,7 +2506,7 @@ "valType": "info_array" }, "y": { - "description": "Sets the vertical domain of this scene (in plot fraction).", + "description": "Sets the vertical domain of this polar subplot (in plot fraction).", "dflt": [ 0, 1 @@ -2572,13 +2514,11 @@ "editType": "plot", "items": [ { - "editType": "plot", "max": 1, "min": 0, "valType": "number" }, { - "editType": "plot", "max": 1, "min": 0, "valType": "number" @@ -2588,38 +2528,18 @@ "valType": "info_array" } }, - "dragmode": { - "description": "Determines the mode of drag interactions for this scene.", - "dflt": "turntable", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "orbit", - "turntable", - "zoom", - "pan", - false - ] - }, - "editType": "plot", - "hovermode": { - "description": "Determines the mode of hover interactions for this scene.", - "dflt": "closest", - "editType": "modebar", - "role": "info", - "valType": "enumerated", - "values": [ - "closest", - false - ] - }, - "role": "object", - "xaxis": { + "editType": "calc", + "radialaxis": { + "angle": { + "description": "Sets the angle (in degrees) from which the radial axis is drawn. Note that by default, radial axis line on the theta=0 line corresponds to a line pointing right (like what mathematicians prefer). Defaults to the first `polar.sector` angle.", + "editType": "plot", + "role": "info", + "valType": "angle" + }, "autorange": { "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", "dflt": true, - "editType": "plot", + "editType": "calc", "impliedEdits": {}, "role": "style", "valType": "enumerated", @@ -2629,13 +2549,6 @@ "reversed" ] }, - "backgroundcolor": { - "description": "Sets the background color of this axis' wall.", - "dflt": "rgba(204, 204, 204, 0.5)", - "editType": "plot", - "role": "style", - "valType": "color" - }, "calendar": { "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", "dflt": "gregorian", @@ -2663,7 +2576,7 @@ }, "categoryarray": { "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "plot", + "editType": "calc", "role": "data", "valType": "data_array" }, @@ -2676,7 +2589,7 @@ "categoryorder": { "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", "dflt": "trace", - "editType": "plot", + "editType": "calc", "role": "info", "valType": "enumerated", "values": [ @@ -2720,7 +2633,7 @@ }, "gridcolor": { "description": "Sets the color of the grid lines.", - "dflt": "rgb(204, 204, 204)", + "dflt": "#eee", "editType": "plot", "role": "style", "valType": "color" @@ -2736,10 +2649,21 @@ "hoverformat": { "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "plot", + "editType": "none", "role": "style", "valType": "string" }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, "linecolor": { "description": "Sets the axis line color.", "dflt": "#444", @@ -2755,25 +2679,11 @@ "role": "style", "valType": "number" }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, + "min": 0, "role": "style", "valType": "integer" }, @@ -2803,15 +2713,15 @@ "valType": "info_array" }, "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", - "dflt": "normal", - "editType": "plot", + "description": "If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data. If *normal*, the range is computed in relation to the extrema of the input data (same behavior as for cartesian axes).", + "dflt": "tozero", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ - "normal", "tozero", - "nonnegative" + "nonnegative", + "normal" ] }, "role": "object", @@ -2822,20 +2732,6 @@ "role": "style", "valType": "boolean" }, - "showaxeslabels": { - "description": "Sets whether or not this axis is labeled", - "dflt": true, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, - "showbackground": { - "description": "Sets whether or not this axis' wall has a background color.", - "dflt": false, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, "showexponent": { "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", "dflt": "all", @@ -2851,22 +2747,16 @@ }, "showgrid": { "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, "editType": "plot", "role": "style", "valType": "boolean" }, "showline": { "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showspikes": { - "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", "dflt": true, "editType": "plot", - "role": "info", + "role": "style", "valType": "boolean" }, "showticklabels": { @@ -2902,27 +2792,16 @@ "none" ] }, - "spikecolor": { - "description": "Sets the color of the spikes.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "spikesides": { - "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", - "dflt": true, + "side": { + "description": "Determines on which side of radial axis line the tick and tick labels appear.", + "dflt": "clockwise", "editType": "plot", "role": "info", - "valType": "boolean" - }, - "spikethickness": { - "description": "Sets the thickness (in px) of the spikes.", - "dflt": 2, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ] }, "tick0": { "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", @@ -3089,6 +2968,7 @@ }, "title": { "description": "Sets the title of this axis.", + "dflt": "", "editType": "plot", "role": "info", "valType": "string" @@ -3120,7 +3000,7 @@ "type": { "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", "dflt": "-", - "editType": "plot", + "editType": "calc", "role": "info", "valType": "enumerated", "values": [ @@ -3133,575 +3013,692 @@ }, "visible": { "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "dflt": true, "editType": "plot", "role": "info", "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "plot", - "role": "style", - "valType": "number" } }, - "yaxis": { - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "plot", - "impliedEdits": {}, - "role": "style", - "valType": "enumerated", - "values": [ - true, - false, - "reversed" - ] - }, - "backgroundcolor": { - "description": "Sets the background color of this axis' wall.", - "dflt": "rgba(204, 204, 204, 0.5)", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "plot", - "role": "data", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on plot.ly for categoryarray .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", - "dflt": "trace", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, + "role": "object", + "sector": { + "description": "Sets angular span of this polar subplot with two angles (in degrees). Sector are assumed to be spanned in the counterclockwise direction with *0* corresponding to rightmost limit of the polar subplot.", + "dflt": [ + 0, + 360 + ], "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "rgb(204, 204, 204)", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "integer" - }, - "range": { - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", - "dflt": "normal", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showaxeslabels": { - "description": "Sets whether or not this axis is labeled", - "dflt": true, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, - "showbackground": { - "description": "Sets whether or not this axis' wall has a background color.", - "dflt": false, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showspikes": { - "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", - "dflt": true, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "spikecolor": { - "description": "Sets the color of the spikes.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "spikesides": { - "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", - "dflt": true, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, - "spikethickness": { - "description": "Sets the thickness (in px) of the spikes.", - "dflt": 2, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" + "items": [ + { + "editType": "plot", + "valType": "number" }, - "role": "style", - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "role": "style", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "tickfont": { - "color": { + { "editType": "plot", - "role": "style", - "valType": "color" + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + } + }, + "radialaxis": { + "domain": { + "description": "Polar chart subplots are not supported yet. This key has currently no effect.", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" }, - "description": "Sets the tick font.", - "editType": "plot", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + { "editType": "plot", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" + "max": 1, + "min": 0, + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "plot", + "endpadding": { + "editType": "plot", + "role": "style", + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation (an angle with respect to the origin) of the radial axis.", + "editType": "plot", + "role": "style", + "valType": "number" + }, + "range": { + "description": "Defines the start and end point of this radial axis.", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "number" }, - "role": "object", - "size": { + { "editType": "plot", - "min": 1, - "role": "style", "valType": "number" } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" + ], + "role": "info", + "valType": "info_array" + }, + "role": "object", + "showline": { + "description": "Determines whether or not the line bounding this radial axis will be shown on the figure.", + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the radial axis ticks will feature tick labels.", + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "tickcolor": { + "description": "Sets the color of the tick lines on this radial axis.", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "ticklen": { + "description": "Sets the length of the tick lines on this radial axis.", + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickorientation": { + "description": "Sets the orientation (from the paper perspective) of the radial axis tick labels.", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "horizontal", + "vertical" + ] + }, + "ticksuffix": { + "description": "Sets the length of the tick lines on this radial axis.", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this axis will be visible.", + "editType": "plot", + "role": "info", + "valType": "boolean" + } + }, + "scene": { + "_arrayAttrRegexps": [ + {} + ], + "_deprecated": { + "cameraposition": { + "description": "Obsolete. Use `camera` instead.", + "editType": "camera", + "role": "info", + "valType": "info_array" + } + }, + "_isSubplotObj": true, + "annotations": { + "items": { + "annotation": { + "align": { + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "arrowcolor": { + "description": "Sets the color of the annotation arrow.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "arrowhead": { + "description": "Sets the end annotation arrow head style.", + "dflt": 1, + "editType": "calc", + "max": 8, + "min": 0, + "role": "style", + "valType": "integer" + }, + "arrowside": { + "description": "Sets the annotation arrow head position.", + "dflt": "end", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "end", + "start" + ], + "role": "style", + "valType": "flaglist" + }, + "arrowsize": { + "description": "Sets the size of the end annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc", + "min": 0.3, + "role": "style", + "valType": "number" + }, + "arrowwidth": { + "description": "Sets the width (in px) of annotation arrow line.", + "editType": "calc", + "min": 0.1, + "role": "style", + "valType": "number" + }, + "ax": { + "description": "Sets the x component of the arrow tail about the arrow head (in pixels).", + "editType": "calc", + "role": "info", + "valType": "number" + }, + "ay": { + "description": "Sets the y component of the arrow tail about the arrow head (in pixels).", + "editType": "calc", + "role": "info", + "valType": "number" + }, + "bgcolor": { + "description": "Sets the background color of the annotation.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the annotation `text`.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "borderpad": { + "description": "Sets the padding (in px) between the `text` and the enclosing border.", + "dflt": 1, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the annotation `text`.", + "dflt": 1, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "captureevents": { + "description": "Determines whether the annotation text box captures mouse move and click events, or allows those events to pass through to data points in the plot that may be behind the annotation. By default `captureevents` is *false* unless `hovertext` is provided. If you use the event `plotly_clickannotation` without `hovertext` you must explicitly enable `captureevents`.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" }, - "editType": "plot", - "role": "object", - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", + "description": "Sets the annotation text font.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, "role": "style", + "strict": true, "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" } + }, + "height": { + "description": "Sets an explicit height for the text box. null (default) lets the text set the box height. Taller text will be clipped.", + "dflt": null, + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + }, + "hoverlabel": { + "bgcolor": { + "description": "Sets the background color of the hover label. By default uses the annotation's `bgcolor` made opaque, or white if it was transparent.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of the hover label. By default uses either dark grey or white, for maximum contrast with `hoverlabel.bgcolor`.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets the hover label text font. By default uses the global hover font and size, with color from `hoverlabel.bordercolor`.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, + "hovertext": { + "description": "Sets text to appear when hovering over this annotation. If omitted or blank, no hover label will appear.", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the annotation (text + arrow).", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "showarrow": { + "description": "Determines whether or not the annotation is drawn with an arrow. If *true*, `text` is placed near the arrow's tail. If *false*, `text` lines up with the `x` and `y` provided.", + "dflt": true, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "standoff": { + "description": "Sets a distance, in pixels, to move the end arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "startarrowhead": { + "description": "Sets the start annotation arrow head style.", + "dflt": 1, + "editType": "calc", + "max": 8, + "min": 0, + "role": "style", + "valType": "integer" + }, + "startarrowsize": { + "description": "Sets the size of the start annotation arrow head, relative to `arrowwidth`. A value of 1 (default) gives a head about 3x as wide as the line.", + "dflt": 1, + "editType": "calc", + "min": 0.3, + "role": "style", + "valType": "number" + }, + "startstandoff": { + "description": "Sets a distance, in pixels, to move the start arrowhead away from the position it is pointing at, for example to point at the edge of a marker independent of zoom. Note that this shortens the arrow from the `ax` / `ay` vector, in contrast to `xshift` / `yshift` which moves everything by this amount.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "text": { + "description": "Sets the text associated with this annotation. Plotly uses a subset of HTML tags to do things like newline (
), bold (), italics (), hyperlinks (). Tags , , are also supported.", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textangle": { + "description": "Sets the angle at which the `text` is drawn with respect to the horizontal.", + "dflt": 0, + "editType": "calc", + "role": "style", + "valType": "angle" + }, + "valign": { + "description": "Sets the vertical alignment of the `text` within the box. Has an effect only if an explicit height is set to override the text height.", + "dflt": "middle", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "visible": { + "description": "Determines whether or not this annotation is visible.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets an explicit width for the text box. null (default) lets the text set the box width. Wider text will be clipped. There is no automatic wrapping; use
to start a new line.", + "dflt": null, + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + }, + "x": { + "description": "Sets the annotation's x position.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "xanchor": { + "description": "Sets the text box's horizontal position anchor This anchor binds the `x` position to the *left*, *center* or *right* of the annotation. For example, if `x` is set to 1, `xref` to *paper* and `xanchor` to *right* then the right-most portion of the annotation lines up with the right-most edge of the plotting area. If *auto*, the anchor is equivalent to *center* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "xshift": { + "description": "Shifts the position of the whole annotation and arrow to the right (positive) or left (negative) by this many pixels.", + "dflt": 0, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the annotation's y position.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "yanchor": { + "description": "Sets the text box's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the annotation. For example, if `y` is set to 1, `yref` to *paper* and `yanchor` to *top* then the top-most portion of the annotation lines up with the top-most edge of the plotting area. If *auto*, the anchor is equivalent to *middle* for data-referenced annotations or if there is an arrow, whereas for paper-referenced with no arrow, the anchor picked corresponds to the closest side.", + "dflt": "auto", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + }, + "yshift": { + "description": "Shifts the position of the whole annotation and arrow up (positive) or down (negative) by this many pixels.", + "dflt": 0, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "z": { + "description": "Sets the annotation's z position.", + "editType": "calc", + "role": "info", + "valType": "any" } - }, + } + }, + "role": "object" + }, + "aspectmode": { + "description": "If *cube*, this scene's axes are drawn as a cube, regardless of the axes' ranges. If *data*, this scene's axes are drawn in proportion with the axes' ranges. If *manual*, this scene's axes are drawn in proportion with the input of *aspectratio* (the default behavior if *aspectratio* is provided). If *auto*, this scene's axes are drawn using the results of *data* except when one axis is more than four times the size of the two others, where in that case the results of *cube* are used.", + "dflt": "auto", + "editType": "plot", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "cube", + "data", + "manual" + ] + }, + "aspectratio": { + "description": "Sets this scene's axis aspectratio.", + "editType": "plot", + "impliedEdits": { + "aspectmode": "manual", "role": "object" }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, + "role": "object", + "x": { "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + }, "min": 0, - "role": "style", - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "role": "data", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "role": "data", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", - "editType": "none", "role": "info", - "valType": "string" + "valType": "number" }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, + "y": { "editType": "plot", + "impliedEdits": { + "^aspectmode": "manual" + }, "min": 0, - "role": "style", + "role": "info", "valType": "number" }, - "title": { - "description": "Sets the title of this axis.", + "z": { "editType": "plot", - "role": "info", - "valType": "string" - }, - "titlefont": { - "color": { - "editType": "plot", - "role": "style", - "valType": "color" + "impliedEdits": { + "^aspectmode": "manual" }, - "description": "Sets this axis' title font.", - "editType": "plot", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "plot", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" + "min": 0, + "role": "info", + "valType": "number" + } + }, + "bgcolor": { + "dflt": "rgba(0,0,0,0)", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "camera": { + "center": { + "description": "Sets the (x,y,z) components of the 'center' camera vector This vector determines the translation (x,y,z) space about the center of this scene. By default, there is no such translation.", + "editType": "camera", + "role": "object", + "x": { + "dflt": 0, + "editType": "camera", + "role": "info", + "valType": "number" }, + "y": { + "dflt": 0, + "editType": "camera", + "role": "info", + "valType": "number" + }, + "z": { + "dflt": 0, + "editType": "camera", + "role": "info", + "valType": "number" + } + }, + "editType": "camera", + "eye": { + "description": "Sets the (x,y,z) components of the 'eye' camera vector. This vector determines the view point about the origin of this scene.", + "editType": "camera", "role": "object", - "size": { - "editType": "plot", - "min": 1, - "role": "style", + "x": { + "dflt": 1.25, + "editType": "camera", + "role": "info", + "valType": "number" + }, + "y": { + "dflt": 1.25, + "editType": "camera", + "role": "info", + "valType": "number" + }, + "z": { + "dflt": 1.25, + "editType": "camera", + "role": "info", "valType": "number" } }, - "type": { - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", + "role": "object", + "up": { + "description": "Sets the (x,y,z) components of the 'up' camera vector. This vector determines the up direction of this scene with respect to the page. The default is *{x: 0, y: 0, z: 1}* which means that the z axis points up.", + "editType": "camera", + "role": "object", + "x": { + "dflt": 0, + "editType": "camera", + "role": "info", + "valType": "number" + }, + "y": { + "dflt": 0, + "editType": "camera", + "role": "info", + "valType": "number" + }, + "z": { + "dflt": 1, + "editType": "camera", + "role": "info", + "valType": "number" + } + } + }, + "domain": { + "editType": "plot", + "role": "object", + "x": { + "description": "Sets the horizontal domain of this scene subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], "editType": "plot", + "items": [ + { + "max": 1, + "min": 0, + "valType": "number" + }, + { + "max": 1, + "min": 0, + "valType": "number" + } + ], "role": "info", - "valType": "enumerated", - "values": [ - "-", - "linear", - "log", - "date", - "category" - ] + "valType": "info_array" }, - "visible": { - "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "y": { + "description": "Sets the vertical domain of this scene subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], "editType": "plot", + "items": [ + { + "max": 1, + "min": 0, + "valType": "number" + }, + { + "max": 1, + "min": 0, + "valType": "number" + } + ], "role": "info", - "valType": "boolean" - }, - "zeroline": { - "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "zerolinecolor": { - "description": "Sets the line color of the zero line.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "zerolinewidth": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 1, - "editType": "plot", - "role": "style", - "valType": "number" + "valType": "info_array" } }, - "zaxis": { + "dragmode": { + "description": "Determines the mode of drag interactions for this scene.", + "dflt": "turntable", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "orbit", + "turntable", + "zoom", + "pan", + false + ] + }, + "editType": "plot", + "hovermode": { + "description": "Determines the mode of hover interactions for this scene.", + "dflt": "closest", + "editType": "modebar", + "role": "info", + "valType": "enumerated", + "values": [ + "closest", + false + ] + }, + "role": "object", + "xaxis": { "autorange": { "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", "dflt": true, @@ -4243,654 +4240,226 @@ "role": "style", "valType": "number" } - } - }, - "separators": { - "description": "Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands.", - "dflt": ".,", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "shapes": { - "items": { - "shape": { - "editType": "arraydraw", - "fillcolor": { - "description": "Sets the color filling the shape's interior.", - "dflt": "rgba(0,0,0,0)", - "editType": "arraydraw", - "role": "info", - "valType": "color" + }, + "yaxis": { + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "role": "style", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "backgroundcolor": { + "description": "Sets the background color of this axis' wall.", + "dflt": "rgba(204, 204, 204, 0.5)", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" }, - "layer": { - "description": "Specifies whether shapes are drawn below or above traces.", - "dflt": "above", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "below", - "above" - ] + "role": "style", + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "rgb(204, 204, 204)", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "integer" + }, + "range": { + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "autorange": false }, - "line": { - "color": { - "description": "Sets the line color.", - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "arraydraw", - "role": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" }, - "editType": "calcIfAutorange", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "calcIfAutorange", - "min": 0, - "role": "style", - "valType": "number" + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" } - }, - "opacity": { - "description": "Sets the opacity of the shape.", - "dflt": 1, - "editType": "arraydraw", - "max": 1, - "min": 0, - "role": "info", - "valType": "number" - }, - "path": { - "description": "For `type` *path* - a valid SVG path but with the pixel values replaced by data values. There are a few restrictions / quirks only absolute instructions, not relative. So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs (A) are not allowed because radius rx and ry are relative. In the future we could consider supporting relative commands, but we would have to decide on how to handle date and log axes. Note that even as is, Q and C Bezier paths that are smooth on linear axes may not be smooth on log, and vice versa. no chained \"polybezier\" commands - specify the segment type for each one. On category axes, values are numbers scaled to the serial numbers of categories because using the categories themselves there would be no way to describe fractional positions On data axes: because space and T are both normal components of path strings, we can't use either to separate date from time parts. Therefore we'll use underscore for this purpose: 2015-02-21_13:45:56.789", - "editType": "calcIfAutorange", - "role": "info", - "valType": "string" - }, - "role": "object", - "type": { - "description": "Specifies the shape type to be drawn. If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`) If *circle*, a circle is drawn from ((`x0`+`x1`)/2, (`y0`+`y1`)/2)) with radius (|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|) If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`) If *path*, draw a custom SVG path using `path`.", - "editType": "calcIfAutorange", - "role": "info", - "valType": "enumerated", - "values": [ - "circle", - "rect", - "path", - "line" - ] - }, - "visible": { - "description": "Determines whether or not this shape is visible.", - "dflt": true, - "editType": "calcIfAutorange", - "role": "info", - "valType": "boolean" - }, - "x0": { - "description": "Sets the shape's starting x position. See `type` for more info.", - "editType": "calcIfAutorange", - "role": "info", - "valType": "any" - }, - "x1": { - "description": "Sets the shape's end x position. See `type` for more info.", - "editType": "calcIfAutorange", - "role": "info", - "valType": "any" - }, - "xref": { - "description": "Sets the shape's x coordinate axis. If set to an x axis id (e.g. *x* or *x2*), the `x` position refers to an x coordinate If set to *paper*, the `x` position refers to the distance from the left side of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right) side. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, then you must convert the date to unix time in milliseconds.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "paper", - "/^x([2-9]|[1-9][0-9]+)?$/" - ] - }, - "y0": { - "description": "Sets the shape's starting y position. See `type` for more info.", - "editType": "calcIfAutorange", - "role": "info", - "valType": "any" - }, - "y1": { - "description": "Sets the shape's end y position. See `type` for more info.", - "editType": "calcIfAutorange", - "role": "info", - "valType": "any" - }, - "yref": { - "description": "Sets the annotation's y coordinate axis. If set to an y axis id (e.g. *y* or *y2*), the `y` position refers to an y coordinate If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top).", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "paper", - "/^y([2-9]|[1-9][0-9]+)?$/" - ] - } - } - }, - "role": "object" - }, - "showlegend": { - "description": "Determines whether or not a legend is drawn.", - "editType": "legend", - "role": "info", - "valType": "boolean" - }, - "sliders": { - "items": { - "slider": { - "active": { - "description": "Determines which button (by index starting from 0) is considered active.", - "dflt": 0, - "editType": "arraydraw", - "min": 0, - "role": "info", - "valType": "number" - }, - "activebgcolor": { - "description": "Sets the background color of the slider grip while dragging.", - "dflt": "#dbdde0", - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "bgcolor": { - "description": "Sets the background color of the slider.", - "dflt": "#f8fafc", - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the color of the border enclosing the slider.", - "dflt": "#bec8d9", - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the slider.", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "role": "style", - "valType": "number" - }, - "currentvalue": { - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "description": "Sets the font of the current value label text.", - "editType": "arraydraw", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "arraydraw", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "arraydraw", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "offset": { - "description": "The amount of space, in pixels, between the current value label and the slider.", - "dflt": 10, - "editType": "arraydraw", - "role": "info", - "valType": "number" - }, - "prefix": { - "description": "When currentvalue.visible is true, this sets the prefix of the label.", - "editType": "arraydraw", - "role": "info", - "valType": "string" - }, - "role": "object", - "suffix": { - "description": "When currentvalue.visible is true, this sets the suffix of the label.", - "editType": "arraydraw", - "role": "info", - "valType": "string" - }, - "visible": { - "description": "Shows the currently-selected value above the slider.", - "dflt": true, - "editType": "arraydraw", - "role": "info", - "valType": "boolean" - }, - "xanchor": { - "description": "The alignment of the value readout relative to the length of the slider.", - "dflt": "left", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - } - }, - "editType": "arraydraw", - "font": { - "color": { - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "description": "Sets the font of the slider step labels.", - "editType": "arraydraw", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "arraydraw", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "arraydraw", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "len": { - "description": "Sets the length of the slider This measure excludes the padding of both ends. That is, the slider's length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "role": "style", - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this slider length is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "minorticklen": { - "description": "Sets the length in pixels of minor step tick marks", - "dflt": 4, - "editType": "arraydraw", - "min": 0, - "role": "style", - "valType": "number" - }, - "pad": { - "b": { - "description": "The amount of padding (in px) along the bottom of the component.", - "dflt": 0, - "editType": "arraydraw", - "role": "style", - "valType": "number" - }, - "description": "Set the padding of the slider component along each side.", - "editType": "arraydraw", - "l": { - "description": "The amount of padding (in px) on the left side of the component.", - "dflt": 0, - "editType": "arraydraw", - "role": "style", - "valType": "number" - }, - "r": { - "description": "The amount of padding (in px) on the right side of the component.", - "dflt": 0, - "editType": "arraydraw", - "role": "style", - "valType": "number" - }, - "role": "object", - "t": { - "description": "The amount of padding (in px) along the top of the component.", - "dflt": 20, - "editType": "arraydraw", - "role": "style", - "valType": "number" - } - }, - "role": "object", - "steps": { - "items": { - "step": { - "args": { - "description": "Sets the arguments values to be passed to the Plotly method set in `method` on slide.", - "editType": "arraydraw", - "freeLength": true, - "items": [ - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "arraydraw", - "execute": { - "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_sliderchange` method and executing the API command manually without losing the benefit of the slider automatically binding to the state of the plot through the specification of `method` and `args`.", - "dflt": true, - "editType": "arraydraw", - "role": "info", - "valType": "boolean" - }, - "label": { - "description": "Sets the text label to appear on the slider", - "editType": "arraydraw", - "role": "info", - "valType": "string" - }, - "method": { - "description": "Sets the Plotly method to be called when the slider value is changed. If the `skip` method is used, the API slider will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to slider events manually via JavaScript.", - "dflt": "restyle", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "restyle", - "relayout", - "animate", - "update", - "skip" - ] - }, - "role": "object", - "value": { - "description": "Sets the value of the slider step, used to refer to the step programatically. Defaults to the slider label if not provided.", - "editType": "arraydraw", - "role": "info", - "valType": "string" - } - } - }, - "role": "object" - }, - "tickcolor": { - "description": "Sets the color of the border enclosing the slider.", - "dflt": "#333", - "editType": "arraydraw", - "role": "style", - "valType": "color" - }, - "ticklen": { - "description": "Sets the length in pixels of step tick marks", - "dflt": 7, - "editType": "arraydraw", - "min": 0, - "role": "style", - "valType": "number" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "arraydraw", - "min": 0, - "role": "style", - "valType": "number" - }, - "transition": { - "duration": { - "description": "Sets the duration of the slider transition", - "dflt": 150, - "editType": "arraydraw", - "min": 0, - "role": "info", - "valType": "number" - }, - "easing": { - "description": "Sets the easing function of the slider transition", - "dflt": "cubic-in-out", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "linear", - "quad", - "cubic", - "sin", - "exp", - "circle", - "elastic", - "back", - "bounce", - "linear-in", - "quad-in", - "cubic-in", - "sin-in", - "exp-in", - "circle-in", - "elastic-in", - "back-in", - "bounce-in", - "linear-out", - "quad-out", - "cubic-out", - "sin-out", - "exp-out", - "circle-out", - "elastic-out", - "back-out", - "bounce-out", - "linear-in-out", - "quad-in-out", - "cubic-in-out", - "sin-in-out", - "exp-in-out", - "circle-in-out", - "elastic-in-out", - "back-in-out", - "bounce-in-out" - ] - }, - "editType": "arraydraw", - "role": "object" - }, - "visible": { - "description": "Determines whether or not the slider is visible.", - "dflt": true, - "editType": "arraydraw", - "role": "info", - "valType": "boolean" - }, - "x": { - "description": "Sets the x position (in normalized coordinates) of the slider.", - "dflt": 0, - "editType": "arraydraw", - "max": 3, - "min": -2, - "role": "style", - "valType": "number" - }, - "xanchor": { - "description": "Sets the slider's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "left", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "left", - "center", - "right" - ] - }, - "y": { - "description": "Sets the y position (in normalized coordinates) of the slider.", - "dflt": 0, - "editType": "arraydraw", - "max": 3, - "min": -2, - "role": "style", - "valType": "number" - }, - "yanchor": { - "description": "Sets the slider's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", - "dflt": "top", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "top", - "middle", - "bottom" - ] - } - } - }, - "role": "object" - }, - "ternary": { - "_isSubplotObj": true, - "aaxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" + ], + "role": "info", + "valType": "info_array" }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", + "dflt": "normal", "editType": "plot", "role": "style", - "valType": "string" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "role": "info", "valType": "enumerated", "values": [ - "above traces", - "below traces" + "normal", + "tozero", + "nonnegative" ] }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, "editType": "plot", - "min": 0, "role": "style", - "valType": "number" + "valType": "boolean" }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, + "showaxeslabels": { + "description": "Sets whether or not this axis is labeled", + "dflt": true, "editType": "plot", - "min": 0, "role": "info", - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, - "editType": "plot", - "min": 1, - "role": "style", - "valType": "integer" + "valType": "boolean" }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", + "showbackground": { + "description": "Sets whether or not this axis' wall has a background color.", "dflt": false, "editType": "plot", - "role": "style", + "role": "info", "valType": "boolean" }, "showexponent": { @@ -4908,18 +4477,24 @@ }, "showgrid": { "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, "editType": "plot", "role": "style", "valType": "boolean" }, "showline": { "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, + "dflt": false, "editType": "plot", "role": "style", "valType": "boolean" }, + "showspikes": { + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, "showticklabels": { "description": "Determines whether or not the tick labels are drawn.", "dflt": true, @@ -4953,11 +4528,33 @@ "none" ] }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "spikecolor": { + "description": "Sets the color of the spikes.", + "dflt": "#444", "editType": "plot", - "impliedEdits": { - "tickmode": "linear" + "role": "style", + "valType": "color" + }, + "spikesides": { + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "spikethickness": { + "description": "Sets the thickness (in px) of the spikes.", + "dflt": 2, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" }, "role": "style", "valType": "any" @@ -5145,9 +4742,119 @@ "role": "style", "valType": "number" } + }, + "type": { + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "-", + "linear", + "log", + "date", + "category" + ] + }, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "zerolinecolor": { + "description": "Sets the line color of the zero line.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "plot", + "role": "style", + "valType": "number" } }, - "baxis": { + "zaxis": { + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "plot", + "impliedEdits": {}, + "role": "style", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "backgroundcolor": { + "description": "Sets the background color of this axis' wall.", + "dflt": "rgba(204, 204, 204, 0.5)", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, "color": { "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", "dflt": "#444", @@ -5182,7 +4889,7 @@ }, "gridcolor": { "description": "Sets the color of the grid lines.", - "dflt": "#eee", + "dflt": "rgb(204, 204, 204)", "editType": "plot", "role": "style", "valType": "color" @@ -5202,17 +4909,6 @@ "role": "style", "valType": "string" }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, "linecolor": { "description": "Sets the axis line color.", "dflt": "#444", @@ -5228,22 +4924,65 @@ "role": "style", "valType": "number" }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, "editType": "plot", - "min": 0, - "role": "info", - "valType": "number" + "role": "style", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] }, "nticks": { "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, + "dflt": 0, "editType": "plot", - "min": 1, + "min": 0, "role": "style", "valType": "integer" }, + "range": { + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", + "dflt": "normal", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, "role": "object", "separatethousands": { "description": "If \"true\", even 4-digit integers are separated", @@ -5252,6 +4991,20 @@ "role": "style", "valType": "boolean" }, + "showaxeslabels": { + "description": "Sets whether or not this axis is labeled", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "showbackground": { + "description": "Sets whether or not this axis' wall has a background color.", + "dflt": false, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, "showexponent": { "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", "dflt": "all", @@ -5267,18 +5020,24 @@ }, "showgrid": { "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, "editType": "plot", "role": "style", "valType": "boolean" }, "showline": { "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, + "dflt": false, "editType": "plot", "role": "style", "valType": "boolean" }, + "showspikes": { + "description": "Sets whether or not spikes starting from data points to this axis' wall are shown on hover.", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, "showticklabels": { "description": "Determines whether or not the tick labels are drawn.", "dflt": true, @@ -5312,6 +5071,28 @@ "none" ] }, + "spikecolor": { + "description": "Sets the color of the spikes.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "spikesides": { + "description": "Sets whether or not spikes extending from the projection data points to this axis' wall boundaries are shown on hover.", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "spikethickness": { + "description": "Sets the thickness (in px) of the spikes.", + "dflt": 2, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, "tick0": { "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", "editType": "plot", @@ -5504,573 +5285,304 @@ "role": "style", "valType": "number" } - } - }, - "bgcolor": { - "description": "Set the background color of the subplot", - "dflt": "#fff", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "caxis": { - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "editType": "plot", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" - ] - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", + "type": { + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", "editType": "plot", "role": "info", "valType": "enumerated", "values": [ - "above traces", - "below traces" + "-", + "linear", + "log", + "date", + "category" ] }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "plot", - "role": "style", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "min": { - "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", - "dflt": 0, + "visible": { + "description": "A single toggle to hide the axis while preserving interaction like dragging. Default is true when a cheater plot is present on the axis, otherwise false", "editType": "plot", - "min": 0, "role": "info", - "valType": "number" - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 6, - "editType": "plot", - "min": 1, - "role": "style", - "valType": "integer" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "dflt": true, - "editType": "plot", - "role": "style", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": true, - "editType": "plot", - "role": "style", "valType": "boolean" }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, + "zeroline": { + "description": "Determines whether or not a line is drawn at along the 0 value of this axis. If *true*, the zero line is drawn on top of the grid lines.", "editType": "plot", "role": "style", "valType": "boolean" }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "plot", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "plot", - "role": "style", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", + "zerolinecolor": { + "description": "Sets the line color of the zero line.", "dflt": "#444", "editType": "plot", "role": "style", "valType": "color" }, - "tickfont": { - "color": { - "editType": "plot", - "role": "style", + "zerolinewidth": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 1, + "editType": "plot", + "role": "style", + "valType": "number" + } + } + }, + "separators": { + "description": "Sets the decimal and thousand separators. For example, *. * puts a '.' before decimals and a space between thousands. In English locales, dflt is *.,* but other locales may alter this default.", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "shapes": { + "items": { + "shape": { + "editType": "arraydraw", + "fillcolor": { + "description": "Sets the color filling the shape's interior.", + "dflt": "rgba(0,0,0,0)", + "editType": "arraydraw", + "role": "info", "valType": "color" }, - "description": "Sets the tick font.", - "editType": "plot", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "plot", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" + "layer": { + "description": "Specifies whether shapes are drawn below or above traces.", + "dflt": "above", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "below", + "above" + ] }, - "role": "object", - "size": { - "editType": "plot", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "plot", - "items": [ - { - "editType": "plot", - "valType": "any" - }, - { - "editType": "plot", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "plot", - "role": "object", - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - } + "line": { + "color": { + "description": "Sets the line color.", + "editType": "arraydraw", + "role": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "arraydraw", + "role": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "calcIfAutorange+arraydraw", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calcIfAutorange+arraydraw", + "min": 0, + "role": "style", + "valType": "number" } }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "plot", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "plot", - "role": "style", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "plot", - "role": "data", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "plot", - "role": "data", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "title": { - "description": "Sets the title of this axis.", - "editType": "plot", - "role": "info", - "valType": "string" - }, - "titlefont": { - "color": { - "editType": "plot", - "role": "style", - "valType": "color" + "opacity": { + "description": "Sets the opacity of the shape.", + "dflt": 1, + "editType": "arraydraw", + "max": 1, + "min": 0, + "role": "info", + "valType": "number" }, - "description": "Sets this axis' title font.", - "editType": "plot", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "plot", - "noBlank": true, - "role": "style", - "strict": true, + "path": { + "description": "For `type` *path* - a valid SVG path but with the pixel values replaced by data values. There are a few restrictions / quirks only absolute instructions, not relative. So the allowed segments are: M, L, H, V, Q, C, T, S, and Z arcs (A) are not allowed because radius rx and ry are relative. In the future we could consider supporting relative commands, but we would have to decide on how to handle date and log axes. Note that even as is, Q and C Bezier paths that are smooth on linear axes may not be smooth on log, and vice versa. no chained \"polybezier\" commands - specify the segment type for each one. On category axes, values are numbers scaled to the serial numbers of categories because using the categories themselves there would be no way to describe fractional positions On data axes: because space and T are both normal components of path strings, we can't use either to separate date from time parts. Therefore we'll use underscore for this purpose: 2015-02-21_13:45:56.789", + "editType": "calcIfAutorange+arraydraw", + "role": "info", "valType": "string" }, "role": "object", - "size": { - "editType": "plot", - "min": 1, - "role": "style", - "valType": "number" + "type": { + "description": "Specifies the shape type to be drawn. If *line*, a line is drawn from (`x0`,`y0`) to (`x1`,`y1`) If *circle*, a circle is drawn from ((`x0`+`x1`)/2, (`y0`+`y1`)/2)) with radius (|(`x0`+`x1`)/2 - `x0`|, |(`y0`+`y1`)/2 -`y0`)|) If *rect*, a rectangle is drawn linking (`x0`,`y0`), (`x1`,`y0`), (`x1`,`y1`), (`x0`,`y1`), (`x0`,`y0`) If *path*, draw a custom SVG path using `path`.", + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "circle", + "rect", + "path", + "line" + ] + }, + "visible": { + "description": "Determines whether or not this shape is visible.", + "dflt": true, + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "boolean" + }, + "x0": { + "description": "Sets the shape's starting x position. See `type` for more info.", + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "any" + }, + "x1": { + "description": "Sets the shape's end x position. See `type` for more info.", + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "any" + }, + "xref": { + "description": "Sets the shape's x coordinate axis. If set to an x axis id (e.g. *x* or *x2*), the `x` position refers to an x coordinate If set to *paper*, the `x` position refers to the distance from the left side of the plotting area in normalized coordinates where *0* (*1*) corresponds to the left (right) side. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, then you must convert the date to unix time in milliseconds.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "paper", + "/^x([2-9]|[1-9][0-9]+)?$/" + ] + }, + "y0": { + "description": "Sets the shape's starting y position. See `type` for more info.", + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "any" + }, + "y1": { + "description": "Sets the shape's end y position. See `type` for more info.", + "editType": "calcIfAutorange+arraydraw", + "role": "info", + "valType": "any" + }, + "yref": { + "description": "Sets the annotation's y coordinate axis. If set to an y axis id (e.g. *y* or *y2*), the `y` position refers to an y coordinate If set to *paper*, the `y` position refers to the distance from the bottom of the plotting area in normalized coordinates where *0* (*1*) corresponds to the bottom (top).", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "paper", + "/^y([2-9]|[1-9][0-9]+)?$/" + ] } } }, - "domain": { - "editType": "plot", - "role": "object", - "x": { - "description": "Sets the horizontal domain of this subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this subplot (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "plot", - "items": [ - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "plot", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - } - }, - "editType": "plot", - "role": "object", - "sum": { - "description": "The number each triplet should sum to, and the maximum range of each axis", - "dflt": 1, - "editType": "plot", - "min": 0, - "role": "info", - "valType": "number" - } + "role": "object" }, - "title": { - "description": "Sets the plot's title.", - "dflt": "Click to enter Plot title", - "editType": "layoutstyle", + "showlegend": { + "description": "Determines whether or not a legend is drawn.", + "editType": "legend", "role": "info", - "valType": "string" - }, - "titlefont": { - "color": { - "editType": "layoutstyle", - "role": "style", - "valType": "color" - }, - "description": "Sets the title font.", - "editType": "layoutstyle", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "layoutstyle", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "layoutstyle", - "min": 1, - "role": "style", - "valType": "number" - } + "valType": "boolean" }, - "updatemenus": { + "sliders": { "items": { - "updatemenu": { - "_arrayAttrRegexps": [ - {} - ], + "slider": { "active": { "description": "Determines which button (by index starting from 0) is considered active.", "dflt": 0, "editType": "arraydraw", - "min": -1, + "min": 0, "role": "info", - "valType": "integer" + "valType": "number" + }, + "activebgcolor": { + "description": "Sets the background color of the slider grip while dragging.", + "dflt": "#dbdde0", + "editType": "arraydraw", + "role": "style", + "valType": "color" }, "bgcolor": { - "description": "Sets the background color of the update menu buttons.", + "description": "Sets the background color of the slider.", + "dflt": "#f8fafc", "editType": "arraydraw", "role": "style", "valType": "color" }, "bordercolor": { - "description": "Sets the color of the border enclosing the update menu.", - "dflt": "#BEC8D9", + "description": "Sets the color of the border enclosing the slider.", + "dflt": "#bec8d9", "editType": "arraydraw", "role": "style", "valType": "color" }, "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the update menu.", + "description": "Sets the width (in px) of the border enclosing the slider.", "dflt": 1, "editType": "arraydraw", "min": 0, "role": "style", "valType": "number" }, - "buttons": { - "items": { - "button": { - "args": { - "description": "Sets the arguments values to be passed to the Plotly method set in `method` on click.", - "editType": "arraydraw", - "freeLength": true, - "items": [ - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - }, - { - "editType": "arraydraw", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, + "currentvalue": { + "editType": "arraydraw", + "font": { + "color": { "editType": "arraydraw", - "execute": { - "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_buttonclicked` method and executing the API command manually without losing the benefit of the updatemenu automatically binding to the state of the plot through the specification of `method` and `args`.", - "dflt": true, - "editType": "arraydraw", - "role": "info", - "valType": "boolean" - }, - "label": { - "description": "Sets the text label to appear on the button.", - "dflt": "", - "editType": "arraydraw", - "role": "info", - "valType": "string" - }, - "method": { - "description": "Sets the Plotly method to be called on click. If the `skip` method is used, the API updatemenu will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to updatemenu events manually via JavaScript.", - "dflt": "restyle", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "restyle", - "relayout", - "animate", - "update", - "skip" - ] - }, - "role": "object" + "role": "style", + "valType": "color" + }, + "description": "Sets the font of the current value label text.", + "editType": "arraydraw", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "arraydraw", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "arraydraw", + "min": 1, + "role": "style", + "valType": "number" } }, - "role": "object" - }, - "direction": { - "description": "Determines the direction in which the buttons are laid out, whether in a dropdown menu or a row/column of buttons. For `left` and `up`, the buttons will still appear in left-to-right or top-to-bottom order respectively.", - "dflt": "down", - "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "left", - "right", - "up", - "down" - ] + "offset": { + "description": "The amount of space, in pixels, between the current value label and the slider.", + "dflt": 10, + "editType": "arraydraw", + "role": "info", + "valType": "number" + }, + "prefix": { + "description": "When currentvalue.visible is true, this sets the prefix of the label.", + "editType": "arraydraw", + "role": "info", + "valType": "string" + }, + "role": "object", + "suffix": { + "description": "When currentvalue.visible is true, this sets the suffix of the label.", + "editType": "arraydraw", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Shows the currently-selected value above the slider.", + "dflt": true, + "editType": "arraydraw", + "role": "info", + "valType": "boolean" + }, + "xanchor": { + "description": "The alignment of the value readout relative to the length of the slider.", + "dflt": "left", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + } }, "editType": "arraydraw", "font": { @@ -6079,7 +5591,7 @@ "role": "style", "valType": "color" }, - "description": "Sets the font of the update menu button text.", + "description": "Sets the font of the slider step labels.", "editType": "arraydraw", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", @@ -6097,6 +5609,33 @@ "valType": "number" } }, + "len": { + "description": "Sets the length of the slider This measure excludes the padding of both ends. That is, the slider's length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this slider length is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minorticklen": { + "description": "Sets the length in pixels of minor step tick marks", + "dflt": 4, + "editType": "arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, "pad": { "b": { "description": "The amount of padding (in px) along the bottom of the component.", @@ -6105,7 +5644,7 @@ "role": "style", "valType": "number" }, - "description": "Sets the padding around the buttons or dropdown menu.", + "description": "Set the padding of the slider component along each side.", "editType": "arraydraw", "l": { "description": "The amount of padding (in px) on the left side of the component.", @@ -6124,40 +5663,166 @@ "role": "object", "t": { "description": "The amount of padding (in px) along the top of the component.", - "dflt": 0, + "dflt": 20, "editType": "arraydraw", "role": "style", "valType": "number" } }, "role": "object", - "showactive": { - "description": "Highlights active dropdown item or active button if true.", - "dflt": true, - "editType": "arraydraw", - "role": "info", - "valType": "boolean" - }, - "type": { - "description": "Determines whether the buttons are accessible via a dropdown menu or whether the buttons are stacked horizontally or vertically", - "dflt": "dropdown", + "steps": { + "items": { + "step": { + "args": { + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on slide.", + "editType": "arraydraw", + "freeLength": true, + "items": [ + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "arraydraw", + "execute": { + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_sliderchange` method and executing the API command manually without losing the benefit of the slider automatically binding to the state of the plot through the specification of `method` and `args`.", + "dflt": true, + "editType": "arraydraw", + "role": "info", + "valType": "boolean" + }, + "label": { + "description": "Sets the text label to appear on the slider", + "editType": "arraydraw", + "role": "info", + "valType": "string" + }, + "method": { + "description": "Sets the Plotly method to be called when the slider value is changed. If the `skip` method is used, the API slider will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to slider events manually via JavaScript.", + "dflt": "restyle", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ] + }, + "role": "object", + "value": { + "description": "Sets the value of the slider step, used to refer to the step programatically. Defaults to the slider label if not provided.", + "editType": "arraydraw", + "role": "info", + "valType": "string" + } + } + }, + "role": "object" + }, + "tickcolor": { + "description": "Sets the color of the border enclosing the slider.", + "dflt": "#333", "editType": "arraydraw", - "role": "info", - "valType": "enumerated", - "values": [ - "dropdown", - "buttons" - ] + "role": "style", + "valType": "color" + }, + "ticklen": { + "description": "Sets the length in pixels of step tick marks", + "dflt": 7, + "editType": "arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, + "transition": { + "duration": { + "description": "Sets the duration of the slider transition", + "dflt": 150, + "editType": "arraydraw", + "min": 0, + "role": "info", + "valType": "number" + }, + "easing": { + "description": "Sets the easing function of the slider transition", + "dflt": "cubic-in-out", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "linear", + "quad", + "cubic", + "sin", + "exp", + "circle", + "elastic", + "back", + "bounce", + "linear-in", + "quad-in", + "cubic-in", + "sin-in", + "exp-in", + "circle-in", + "elastic-in", + "back-in", + "bounce-in", + "linear-out", + "quad-out", + "cubic-out", + "sin-out", + "exp-out", + "circle-out", + "elastic-out", + "back-out", + "bounce-out", + "linear-in-out", + "quad-in-out", + "cubic-in-out", + "sin-in-out", + "exp-in-out", + "circle-in-out", + "elastic-in-out", + "back-in-out", + "bounce-in-out" + ] + }, + "editType": "arraydraw", + "role": "object" }, "visible": { - "description": "Determines whether or not the update menu is visible.", + "description": "Determines whether or not the slider is visible.", + "dflt": true, "editType": "arraydraw", "role": "info", "valType": "boolean" }, "x": { - "description": "Sets the x position (in normalized coordinates) of the update menu.", - "dflt": -0.05, + "description": "Sets the x position (in normalized coordinates) of the slider.", + "dflt": 0, "editType": "arraydraw", "max": 3, "min": -2, @@ -6165,8 +5830,8 @@ "valType": "number" }, "xanchor": { - "description": "Sets the update menu's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "right", + "description": "Sets the slider's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "left", "editType": "arraydraw", "role": "info", "valType": "enumerated", @@ -6178,8 +5843,8 @@ ] }, "y": { - "description": "Sets the y position (in normalized coordinates) of the update menu.", - "dflt": 1, + "description": "Sets the y position (in normalized coordinates) of the slider.", + "dflt": 0, "editType": "arraydraw", "max": 3, "min": -2, @@ -6187,7 +5852,7 @@ "valType": "number" }, "yanchor": { - "description": "Sets the update menu's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "description": "Sets the slider's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", "dflt": "top", "editType": "arraydraw", "role": "info", @@ -6203,401 +5868,357 @@ }, "role": "object" }, - "width": { - "description": "Sets the plot's width (in px).", - "dflt": 700, + "spikedistance": { + "description": "Sets the default distance (in pixels) to look for data to draw spikelines to (-1 means no cutoff, 0 means no looking for data).", + "dflt": 20, "editType": "none", - "min": 10, + "min": -1, "role": "info", - "valType": "number" + "valType": "integer" }, - "xaxis": { - "_deprecated": { - "autotick": { - "description": "Obsolete. Set `tickmode` to *auto* for old `autotick` *true* behavior. Set `tickmode` to *linear* for `autotick` *false*.", - "editType": "ticks", - "role": "info", - "valType": "boolean" - } - }, + "ternary": { "_isSubplotObj": true, - "anchor": { - "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?$/", - "/^y([2-9]|[1-9][0-9]+)?$/" - ] - }, - "autorange": { - "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "style", - "valType": "enumerated", - "values": [ - true, - false, - "reversed" - ] - }, - "calendar": { - "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "categoryarray": { - "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "categoryarraysrc": { - "description": "Sets the source reference on plot.ly for categoryarray .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "categoryorder": { - "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", - "dflt": "trace", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "trace", - "category ascending", - "category descending", - "array" - ] - }, - "color": { - "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", - "dflt": "#444", - "editType": "ticks", - "role": "style", - "valType": "color" - }, - "constrain": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*.", - "dflt": "range", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "range", - "domain" - ] - }, - "constraintoward": { - "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "left", - "center", - "right", - "top", - "middle", - "bottom" - ] - }, - "domain": { - "description": "Sets the domain of this axis (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "aaxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" + "role": "style", + "valType": "any" }, - "role": "style", - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "ticks", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" - ] - }, - "fixedrange": { - "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "gridcolor": { - "description": "Sets the color of the grid lines.", - "dflt": "#eee", - "editType": "ticks", - "role": "style", - "valType": "color" - }, - "gridwidth": { - "description": "Sets the width (in px) of the grid lines.", - "dflt": 1, - "editType": "ticks", - "min": 0, - "role": "style", - "valType": "number" - }, - "hoverformat": { - "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "none", - "role": "style", - "valType": "string" - }, - "layer": { - "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", - "dflt": "above traces", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "above traces", - "below traces" - ] - }, - "linecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "layoutstyle", - "role": "style", - "valType": "color" - }, - "linewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "ticks+layoutstyle", - "min": 0, - "role": "style", - "valType": "number" - }, - "mirror": { - "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", - "dflt": false, - "editType": "ticks+layoutstyle", - "role": "style", - "valType": "enumerated", - "values": [ - true, - "ticks", - false, - "all", - "allticks" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "ticks", - "min": 0, - "role": "style", - "valType": "integer" - }, - "overlaying": { - "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis. If *false*, this axis does not overlay any same-letter axes.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "free", - "/^x([2-9]|[1-9][0-9]+)?$/", - "/^y([2-9]|[1-9][0-9]+)?$/" - ] - }, - "position": { - "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", - "dflt": 0, - "editType": "plot", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "range": { - "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", "editType": "plot", - "impliedEdits": { - "autorange": false - }, - "items": [ - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - }, - { - "editType": "plot", - "impliedEdits": { - "^autorange": false - }, - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "rangemode": { - "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", - "dflt": "normal", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "normal", - "tozero", - "nonnegative" - ] - }, - "rangeselector": { - "activecolor": { - "description": "Sets the background color of the active range selector button.", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", "editType": "plot", "role": "style", - "valType": "color" + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] }, - "bgcolor": { - "description": "Sets the background color of the range selector buttons.", + "gridcolor": { + "description": "Sets the color of the grid lines.", "dflt": "#eee", "editType": "plot", "role": "style", "valType": "color" }, - "bordercolor": { - "description": "Sets the color of the border enclosing the range selector.", - "dflt": "#444", + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, "editType": "plot", + "min": 0, "role": "style", - "valType": "color" + "valType": "number" }, - "borderwidth": { - "description": "Sets the width (in px) of the border enclosing the range selector.", - "dflt": 0, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, "editType": "plot", "min": 0, "role": "style", "valType": "number" }, - "buttons": { + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "info", + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, + "role": "style", + "valType": "integer" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets the tick font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "tickformatstops": { "items": { - "button": { - "count": { - "description": "Sets the number of steps to take to update the range. Use with `step` to specify the update interval.", - "dflt": 1, + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", "editType": "plot", - "min": 0, + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], "role": "info", - "valType": "number" + "valType": "info_array" }, - "description": "Sets the specifications for each buttons. By default, a range selector comes with no buttons.", "editType": "plot", - "label": { - "description": "Sets the text label to appear on the button.", - "editType": "plot", - "role": "info", - "valType": "string" - }, "role": "object", - "step": { - "description": "The unit of measurement that the `count` value will set the range by.", - "dflt": "month", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "month", - "year", - "day", - "hour", - "minute", - "second", - "all" - ] - }, - "stepmode": { - "description": "Sets the range update mode. If *backward*, the range update shifts the start of range back *count* times *step* milliseconds. If *todate*, the range update shifts the start of range back to the first timestamp from *count* times *step* milliseconds back. For example, with `step` set to *year* and `count` set to *1* the range update shifts the start of the range back to January 01 of the current year. Month and year *todate* are currently available only for the built-in (Gregorian) calendar.", - "dflt": "backward", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "backward", - "todate" - ] + "role": "style", + "valType": "string" } } }, "role": "object" }, - "editType": "plot", - "font": { + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "title": { + "description": "Sets the title of this axis.", + "editType": "plot", + "role": "info", + "valType": "string" + }, + "titlefont": { "color": { "editType": "plot", "role": "style", "valType": "color" }, - "description": "Sets the font of the range selector button text.", + "description": "Sets this axis' title font.", "editType": "plot", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", @@ -6614,464 +6235,1953 @@ "role": "style", "valType": "number" } - }, - "role": "object", - "visible": { - "description": "Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*.", + } + }, + "baxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", "editType": "plot", - "role": "info", - "valType": "boolean" + "role": "style", + "valType": "color" }, - "x": { - "description": "Sets the x position (in normalized coordinates) of the range selector.", + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", "editType": "plot", - "max": 3, - "min": -2, + "impliedEdits": { + "tickmode": "linear" + }, "role": "style", - "valType": "number" + "valType": "any" }, - "xanchor": { - "description": "Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", - "dflt": "left", + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", "editType": "plot", - "role": "info", + "role": "style", "valType": "enumerated", "values": [ - "auto", - "left", - "center", - "right" + "none", + "e", + "E", + "power", + "SI", + "B" ] }, - "y": { - "description": "Sets the y position (in normalized coordinates) of the range selector.", + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", "editType": "plot", - "max": 3, - "min": -2, + "role": "style", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, "role": "style", "valType": "number" }, - "yanchor": { - "description": "Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", - "dflt": "bottom", + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", "editType": "plot", "role": "info", "valType": "enumerated", "values": [ - "auto", - "top", - "middle", - "bottom" + "above traces", + "below traces" ] - } - }, - "rangeslider": { - "autorange": { - "description": "Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*.", - "dflt": true, - "editType": "calc", - "role": "style", - "valType": "boolean" }, - "bgcolor": { - "description": "Sets the background color of the range slider.", - "dflt": "#fff", - "editType": "calc", + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", "role": "style", "valType": "color" }, - "bordercolor": { - "description": "Sets the border color of the range slider.", - "dflt": "#444", - "editType": "calc", + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, "role": "style", - "valType": "color" + "valType": "number" }, - "borderwidth": { - "description": "Sets the border color of the range slider.", + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", "dflt": 0, - "editType": "calc", + "editType": "plot", "min": 0, + "role": "info", + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, "role": "style", "valType": "integer" }, - "editType": "calc", - "range": { - "description": "Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, "role": "object", - "thickness": { - "description": "The height of the range slider as a fraction of the total plot area height.", - "dflt": 0.15, - "editType": "calc", - "max": 1, - "min": 0, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", "role": "style", - "valType": "number" + "valType": "boolean" }, - "visible": { - "description": "Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange`", + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", "dflt": true, - "editType": "calc", - "role": "info", + "editType": "plot", + "role": "style", "valType": "boolean" - } - }, - "role": "object", - "scaleanchor": { - "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "/^x([2-9]|[1-9][0-9]+)?$/", - "/^y([2-9]|[1-9][0-9]+)?$/" - ] - }, - "scaleratio": { - "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", - "dflt": 1, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "ticks", - "role": "style", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "ticks", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showgrid": { - "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", - "editType": "ticks", - "role": "style", - "valType": "boolean" - }, - "showline": { - "description": "Determines whether or not a line bounding this axis is drawn.", - "dflt": false, - "editType": "layoutstyle", - "role": "style", - "valType": "boolean" - }, - "showspikes": { - "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", - "dflt": false, - "editType": "modebar", - "role": "style", - "valType": "boolean" - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "ticks", - "role": "style", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "ticks", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "ticks", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "side": { - "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", - "editType": "plot", - "role": "info", - "valType": "enumerated", - "values": [ - "top", - "bottom", - "left", - "right" - ] - }, - "spikecolor": { - "description": "Sets the spike color. If undefined, will use the series color", - "dflt": null, - "editType": "none", - "role": "style", - "valType": "color" - }, - "spikedash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "dash", - "editType": "none", - "role": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, - "spikemode": { - "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", - "dflt": "toaxis", - "editType": "none", - "flags": [ - "toaxis", - "across", - "marker" - ], - "role": "style", - "valType": "flaglist" - }, - "spikethickness": { - "description": "Sets the width (in px) of the zero line.", - "dflt": 3, - "editType": "none", - "role": "style", - "valType": "number" - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "ticks", - "impliedEdits": { - "tickmode": "linear" }, - "role": "style", - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "ticks", - "role": "style", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "ticks", - "role": "style", - "valType": "color" - }, - "tickfont": { - "color": { - "editType": "ticks", + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", "role": "style", "valType": "color" }, - "description": "Sets the tick font.", - "editType": "ticks", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "ticks", - "noBlank": true, + "tickfont": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets the tick font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", "role": "style", - "strict": true, "valType": "string" }, - "role": "object", - "size": { - "editType": "ticks", - "min": 1, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "plot", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, "role": "style", "valType": "number" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "ticks", - "role": "style", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "ticks", - "items": [ - { - "editType": "ticks", - "valType": "any" - }, - { - "editType": "ticks", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "ticks", - "role": "object", - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "ticks", - "role": "style", - "valType": "string" - } - } }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "ticks", - "min": 0, - "role": "style", - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "ticks", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "ticks", - "role": "style", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "editType": "ticks", - "role": "style", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "ticks", - "role": "style", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "ticks", - "role": "data", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "ticks", - "role": "data", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "ticks", - "min": 0, - "role": "style", - "valType": "number" - }, - "title": { - "description": "Sets the title of this axis.", - "editType": "ticks", - "role": "info", - "valType": "string" - }, - "titlefont": { - "color": { - "editType": "ticks", + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", "role": "style", - "valType": "color" + "valType": "string" }, - "description": "Sets this axis' title font.", - "editType": "ticks", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "ticks", - "noBlank": true, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", "role": "style", - "strict": true, "valType": "string" }, - "role": "object", - "size": { - "editType": "ticks", - "min": 1, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, "role": "style", "valType": "number" + }, + "title": { + "description": "Sets the title of this axis.", + "editType": "plot", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets this axis' title font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } } }, - "type": { - "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", - "dflt": "-", - "editType": "calc", + "bgcolor": { + "description": "Set the background color of the subplot", + "dflt": "#fff", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "caxis": { + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "plot", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "min": { + "description": "The minimum value visible on this axis. The maximum is determined by the sum minus the minimum values of the other two axes. The full view corresponds to all the minima set to zero.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "info", + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 6, + "editType": "plot", + "min": 1, + "role": "style", + "valType": "integer" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "plot", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets the tick font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "plot", + "items": [ + { + "editType": "plot", + "valType": "any" + }, + { + "editType": "plot", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "plot", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "plot", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "plot", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "plot", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "title": { + "description": "Sets the title of this axis.", + "editType": "plot", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets this axis' title font.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } + } + }, + "domain": { + "editType": "plot", + "role": "object", + "x": { + "description": "Sets the horizontal domain of this ternary subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + }, + "y": { + "description": "Sets the vertical domain of this ternary subplot (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "plot", + "items": [ + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "plot", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + } + }, + "editType": "plot", + "role": "object", + "sum": { + "description": "The number each triplet should sum to, and the maximum range of each axis", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "info", + "valType": "number" + } + }, + "title": { + "description": "Sets the plot's title.", + "editType": "layoutstyle", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "layoutstyle", + "role": "style", + "valType": "color" + }, + "description": "Sets the title font.", + "editType": "layoutstyle", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "layoutstyle", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "layoutstyle", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "updatemenus": { + "items": { + "updatemenu": { + "_arrayAttrRegexps": [ + {} + ], + "active": { + "description": "Determines which button (by index starting from 0) is considered active.", + "dflt": 0, + "editType": "arraydraw", + "min": -1, + "role": "info", + "valType": "integer" + }, + "bgcolor": { + "description": "Sets the background color of the update menu buttons.", + "editType": "arraydraw", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the update menu.", + "dflt": "#BEC8D9", + "editType": "arraydraw", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the update menu.", + "dflt": 1, + "editType": "arraydraw", + "min": 0, + "role": "style", + "valType": "number" + }, + "buttons": { + "items": { + "button": { + "args": { + "description": "Sets the arguments values to be passed to the Plotly method set in `method` on click.", + "editType": "arraydraw", + "freeLength": true, + "items": [ + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + }, + { + "editType": "arraydraw", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "arraydraw", + "execute": { + "description": "When true, the API method is executed. When false, all other behaviors are the same and command execution is skipped. This may be useful when hooking into, for example, the `plotly_buttonclicked` method and executing the API command manually without losing the benefit of the updatemenu automatically binding to the state of the plot through the specification of `method` and `args`.", + "dflt": true, + "editType": "arraydraw", + "role": "info", + "valType": "boolean" + }, + "label": { + "description": "Sets the text label to appear on the button.", + "dflt": "", + "editType": "arraydraw", + "role": "info", + "valType": "string" + }, + "method": { + "description": "Sets the Plotly method to be called on click. If the `skip` method is used, the API updatemenu will function as normal but will perform no API calls and will not bind automatically to state updates. This may be used to create a component interface and attach to updatemenu events manually via JavaScript.", + "dflt": "restyle", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "restyle", + "relayout", + "animate", + "update", + "skip" + ] + }, + "role": "object" + } + }, + "role": "object" + }, + "direction": { + "description": "Determines the direction in which the buttons are laid out, whether in a dropdown menu or a row/column of buttons. For `left` and `up`, the buttons will still appear in left-to-right or top-to-bottom order respectively.", + "dflt": "down", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "left", + "right", + "up", + "down" + ] + }, + "editType": "arraydraw", + "font": { + "color": { + "editType": "arraydraw", + "role": "style", + "valType": "color" + }, + "description": "Sets the font of the update menu button text.", + "editType": "arraydraw", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "arraydraw", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "arraydraw", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "pad": { + "b": { + "description": "The amount of padding (in px) along the bottom of the component.", + "dflt": 0, + "editType": "arraydraw", + "role": "style", + "valType": "number" + }, + "description": "Sets the padding around the buttons or dropdown menu.", + "editType": "arraydraw", + "l": { + "description": "The amount of padding (in px) on the left side of the component.", + "dflt": 0, + "editType": "arraydraw", + "role": "style", + "valType": "number" + }, + "r": { + "description": "The amount of padding (in px) on the right side of the component.", + "dflt": 0, + "editType": "arraydraw", + "role": "style", + "valType": "number" + }, + "role": "object", + "t": { + "description": "The amount of padding (in px) along the top of the component.", + "dflt": 0, + "editType": "arraydraw", + "role": "style", + "valType": "number" + } + }, + "role": "object", + "showactive": { + "description": "Highlights active dropdown item or active button if true.", + "dflt": true, + "editType": "arraydraw", + "role": "info", + "valType": "boolean" + }, + "type": { + "description": "Determines whether the buttons are accessible via a dropdown menu or whether the buttons are stacked horizontally or vertically", + "dflt": "dropdown", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "dropdown", + "buttons" + ] + }, + "visible": { + "description": "Determines whether or not the update menu is visible.", + "editType": "arraydraw", + "role": "info", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position (in normalized coordinates) of the update menu.", + "dflt": -0.05, + "editType": "arraydraw", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "xanchor": { + "description": "Sets the update menu's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "right", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "y": { + "description": "Sets the y position (in normalized coordinates) of the update menu.", + "dflt": 1, + "editType": "arraydraw", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets the update menu's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "dflt": "top", + "editType": "arraydraw", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + } + } + }, + "role": "object" + }, + "width": { + "description": "Sets the plot's width (in px).", + "dflt": 700, + "editType": "none", + "min": 10, + "role": "info", + "valType": "number" + }, + "xaxis": { + "_deprecated": { + "autotick": { + "description": "Obsolete. Set `tickmode` to *auto* for old `autotick` *true* behavior. Set `tickmode` to *linear* for `autotick` *false*.", + "editType": "ticks", + "role": "info", + "valType": "boolean" + } + }, + "_isSubplotObj": true, + "anchor": { + "description": "If set to an opposite-letter axis id (e.g. `x2`, `y`), this axis is bound to the corresponding opposite-letter axis. If set to *free*, this axis' position is determined by `position`.", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ] + }, + "autorange": { + "description": "Determines whether or not the range of this axis is computed in relation to the input data. See `rangemode` for more info. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "enumerated", + "values": [ + true, + false, + "reversed" + ] + }, + "calendar": { + "description": "Sets the calendar system to use for `range` and `tick0` if this is a date axis. This does not set the calendar for interpreting data on this axis, that's specified in the trace or via the global `layout.calendar`", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "categoryarray": { + "description": "Sets the order in which categories on this axis appear. Only has an effect if `categoryorder` is set to *array*. Used with `categoryorder`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "categoryarraysrc": { + "description": "Sets the source reference on plot.ly for categoryarray .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "categoryorder": { + "description": "Specifies the ordering logic for the case of categorical variables. By default, plotly uses *trace*, which specifies the order that is present in the data supplied. Set `categoryorder` to *category ascending* or *category descending* if order should be determined by the alphanumerical order of the category names. Set `categoryorder` to *array* to derive the ordering from the attribute `categoryarray`. If a category is not found in the `categoryarray` array, the sorting behavior for that attribute will be identical to the *trace* mode. The unspecified categories will follow the categories in `categoryarray`.", + "dflt": "trace", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "trace", + "category ascending", + "category descending", + "array" + ] + }, + "color": { + "description": "Sets default for all colors associated with this axis all at once: line, font, tick, and grid colors. Grid color is lightened by blending this with the plot background Individual pieces can override this.", + "dflt": "#444", + "editType": "ticks", + "role": "style", + "valType": "color" + }, + "constrain": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines how that happens: by increasing the *range* (default), or by decreasing the *domain*.", + "dflt": "range", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "range", + "domain" + ] + }, + "constraintoward": { + "description": "If this axis needs to be compressed (either due to its own `scaleanchor` and `scaleratio` or those of the other axis), determines which direction we push the originally specified plot area. Options are *left*, *center* (default), and *right* for x axes, and *top*, *middle* (default), and *bottom* for y axes.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "left", + "center", + "right", + "top", + "middle", + "bottom" + ] + }, + "domain": { + "description": "Sets the domain of this axis (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + { + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "ticks", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "fixedrange": { + "description": "Determines whether or not this axis is zoom-able. If true, then zoom is disabled.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "gridcolor": { + "description": "Sets the color of the grid lines.", + "dflt": "#eee", + "editType": "ticks", + "role": "style", + "valType": "color" + }, + "gridwidth": { + "description": "Sets the width (in px) of the grid lines.", + "dflt": 1, + "editType": "ticks", + "min": 0, + "role": "style", + "valType": "number" + }, + "hoverformat": { + "description": "Sets the hover text formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "none", + "role": "style", + "valType": "string" + }, + "layer": { + "description": "Sets the layer on which this axis is displayed. If *above traces*, this axis is displayed above all the subplot's traces If *below traces*, this axis is displayed below all the subplot's traces, but above the grid lines. Useful when used together with scatter-like traces with `cliponaxis` set to *false* to show markers and/or text nodes above this axis.", + "dflt": "above traces", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "above traces", + "below traces" + ] + }, + "linecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "layoutstyle", + "role": "style", + "valType": "color" + }, + "linewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "ticks+layoutstyle", + "min": 0, + "role": "style", + "valType": "number" + }, + "mirror": { + "description": "Determines if the axis lines or/and ticks are mirrored to the opposite side of the plotting area. If *true*, the axis lines are mirrored. If *ticks*, the axis lines and ticks are mirrored. If *false*, mirroring is disable. If *all*, axis lines are mirrored on all shared-axes subplots. If *allticks*, axis lines and ticks are mirrored on all shared-axes subplots.", + "dflt": false, + "editType": "ticks+layoutstyle", + "role": "style", + "valType": "enumerated", + "values": [ + true, + "ticks", + false, + "all", + "allticks" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "ticks", + "min": 0, + "role": "style", + "valType": "integer" + }, + "overlaying": { + "description": "If set a same-letter axis id, this axis is overlaid on top of the corresponding same-letter axis. If *false*, this axis does not overlay any same-letter axes.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "free", + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ] + }, + "position": { + "description": "Sets the position of this axis in the plotting space (in normalized coordinates). Only has an effect if `anchor` is set to *free*.", + "dflt": 0, + "editType": "plot", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "range": { + "description": "Sets the range of this axis. If the axis `type` is *log*, then you must take the log of your desired range (e.g. to set the range from 1 to 100, set the range from 0 to 2). If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "plot", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "plot", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "rangemode": { + "description": "If *normal*, the range is computed in relation to the extrema of the input data. If *tozero*`, the range extends to 0, regardless of the input data If *nonnegative*, the range is non-negative, regardless of the input data.", + "dflt": "normal", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "normal", + "tozero", + "nonnegative" + ] + }, + "rangeselector": { + "activecolor": { + "description": "Sets the background color of the active range selector button.", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "bgcolor": { + "description": "Sets the background color of the range selector buttons.", + "dflt": "#eee", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the color of the border enclosing the range selector.", + "dflt": "#444", + "editType": "plot", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) of the border enclosing the range selector.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, + "buttons": { + "items": { + "button": { + "count": { + "description": "Sets the number of steps to take to update the range. Use with `step` to specify the update interval.", + "dflt": 1, + "editType": "plot", + "min": 0, + "role": "info", + "valType": "number" + }, + "description": "Sets the specifications for each buttons. By default, a range selector comes with no buttons.", + "editType": "plot", + "label": { + "description": "Sets the text label to appear on the button.", + "editType": "plot", + "role": "info", + "valType": "string" + }, + "role": "object", + "step": { + "description": "The unit of measurement that the `count` value will set the range by.", + "dflt": "month", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "month", + "year", + "day", + "hour", + "minute", + "second", + "all" + ] + }, + "stepmode": { + "description": "Sets the range update mode. If *backward*, the range update shifts the start of range back *count* times *step* milliseconds. If *todate*, the range update shifts the start of range back to the first timestamp from *count* times *step* milliseconds back. For example, with `step` set to *year* and `count` set to *1* the range update shifts the start of the range back to January 01 of the current year. Month and year *todate* are currently available only for the built-in (Gregorian) calendar.", + "dflt": "backward", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "backward", + "todate" + ] + } + } + }, + "role": "object" + }, + "editType": "plot", + "font": { + "color": { + "editType": "plot", + "role": "style", + "valType": "color" + }, + "description": "Sets the font of the range selector button text.", + "editType": "plot", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "plot", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "plot", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "visible": { + "description": "Determines whether or not this range selector is visible. Note that range selectors are only available for x axes of `type` set to or auto-typed to *date*.", + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "x": { + "description": "Sets the x position (in normalized coordinates) of the range selector.", + "editType": "plot", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "xanchor": { + "description": "Sets the range selector's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the range selector.", + "dflt": "left", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "left", + "center", + "right" + ] + }, + "y": { + "description": "Sets the y position (in normalized coordinates) of the range selector.", + "editType": "plot", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets the range selector's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the range selector.", + "dflt": "bottom", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "top", + "middle", + "bottom" + ] + } + }, + "rangeslider": { + "autorange": { + "description": "Determines whether or not the range slider range is computed in relation to the input data. If `range` is provided, then `autorange` is set to *false*.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "bgcolor": { + "description": "Sets the background color of the range slider.", + "dflt": "#fff", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the border color of the range slider.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the border color of the range slider.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "integer" + }, + "editType": "calc", + "range": { + "description": "Sets the range of the range slider. If not set, defaults to the full xaxis range. If the axis `type` is *log*, then you must take the log of your desired range. If the axis `type` is *date*, it should be date strings, like date data, though Date objects and unix milliseconds will be accepted and converted to strings. If the axis `type` is *category*, it should be numbers, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "autorange": false + }, + "items": [ + { + "editType": "calc", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + }, + { + "editType": "calc", + "impliedEdits": { + "^autorange": false + }, + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "role": "object", + "thickness": { + "description": "The height of the range slider as a fraction of the total plot area height.", + "dflt": 0.15, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not the range slider will be visible. If visible, perpendicular axes will be set to `fixedrange`", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "role": "object", + "scaleanchor": { + "description": "If set to another axis id (e.g. `x2`, `y`), the range of this axis changes together with the range of the corresponding axis such that the scale of pixels per unit is in a constant ratio. Both axes are still zoomable, but when you zoom one, the other will zoom the same amount, keeping a fixed midpoint. `constrain` and `constraintoward` determine how we enforce the constraint. You can chain these, ie `yaxis: {scaleanchor: *x*}, xaxis2: {scaleanchor: *y*}` but you can only link axes of the same `type`. The linked axis can have the opposite letter (to constrain the aspect ratio) or the same letter (to match scales across subplots). Loops (`yaxis: {scaleanchor: *x*}, xaxis: {scaleanchor: *y*}` or longer) are redundant and the last constraint encountered will be ignored to avoid possible inconsistent constraints via `scaleratio`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "/^x([2-9]|[1-9][0-9]+)?$/", + "/^y([2-9]|[1-9][0-9]+)?$/" + ] + }, + "scaleratio": { + "description": "If this axis is linked to another by `scaleanchor`, this determines the pixel to unit scale ratio. For example, if this value is 10, then every unit on this axis spans 10 times the number of pixels as a unit on the linked axis. Use this for example to create an elevation profile where the vertical scale is exaggerated a fixed amount with respect to the horizontal.", + "dflt": 1, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "ticks", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "ticks", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showgrid": { + "description": "Determines whether or not grid lines are drawn. If *true*, the grid lines are drawn at every tick mark.", + "editType": "ticks", + "role": "style", + "valType": "boolean" + }, + "showline": { + "description": "Determines whether or not a line bounding this axis is drawn.", + "dflt": false, + "editType": "layoutstyle", + "role": "style", + "valType": "boolean" + }, + "showspikes": { + "description": "Determines whether or not spikes (aka droplines) are drawn for this axis. Note: This only takes affect when hovermode = closest", + "dflt": false, + "editType": "modebar", + "role": "style", + "valType": "boolean" + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "ticks", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "ticks", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "ticks", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "side": { + "description": "Determines whether a x (y) axis is positioned at the *bottom* (*left*) or *top* (*right*) of the plotting area.", + "editType": "plot", + "role": "info", + "valType": "enumerated", + "values": [ + "top", + "bottom", + "left", + "right" + ] + }, + "spikecolor": { + "description": "Sets the spike color. If undefined, will use the series color", + "dflt": null, + "editType": "none", + "role": "style", + "valType": "color" + }, + "spikedash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "dash", + "editType": "none", + "role": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "spikemode": { + "description": "Determines the drawing mode for the spike line If *toaxis*, the line is drawn from the data point to the axis the series is plotted on. If *across*, the line is drawn across the entire plot area, and supercedes *toaxis*. If *marker*, then a marker dot is drawn on the axis the series is plotted on", + "dflt": "toaxis", + "editType": "none", + "flags": [ + "toaxis", + "across", + "marker" + ], + "role": "style", + "valType": "flaglist" + }, + "spikesnap": { + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", + "dflt": "data", + "editType": "none", + "role": "style", + "valType": "enumerated", + "values": [ + "data", + "cursor" + ] + }, + "spikethickness": { + "description": "Sets the width (in px) of the zero line.", + "dflt": 3, + "editType": "none", + "role": "style", + "valType": "number" + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "ticks", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "ticks", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "ticks", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "ticks", + "role": "style", + "valType": "color" + }, + "description": "Sets the tick font.", + "editType": "ticks", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "ticks", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "ticks", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "ticks", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "ticks", + "items": [ + { + "editType": "ticks", + "valType": "any" + }, + { + "editType": "ticks", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "ticks", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "ticks", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "ticks", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "ticks", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "ticks", + "role": "style", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "editType": "ticks", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "ticks", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "ticks", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "ticks", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "ticks", + "min": 0, + "role": "style", + "valType": "number" + }, + "title": { + "description": "Sets the title of this axis.", + "editType": "ticks", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "ticks", + "role": "style", + "valType": "color" + }, + "description": "Sets this axis' title font.", + "editType": "ticks", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "ticks", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "ticks", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "type": { + "description": "Sets the axis type. By default, plotly attempts to determined the axis type by looking into the data of the traces that referenced the axis in question.", + "dflt": "-", + "editType": "calc", "role": "info", "valType": "enumerated", "values": [ @@ -7546,6 +8656,17 @@ "role": "style", "valType": "flaglist" }, + "spikesnap": { + "description": "Determines whether spikelines are stuck to the cursor or to the closest datapoints.", + "dflt": "data", + "editType": "none", + "role": "style", + "valType": "enumerated", + "values": [ + "data", + "cursor" + ] + }, "spikethickness": { "description": "Sets the width (in px) of the zero line.", "dflt": 3, @@ -8301,7 +9422,7 @@ "valType": "number" }, "r": { - "description": "For polar chart only.Sets the radial coordinates.", + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the radial coordinates.", "editType": "calc", "role": "data", "valType": "data_array" @@ -8312,6 +9433,12 @@ "role": "info", "valType": "string" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -8341,7 +9468,7 @@ } }, "t": { - "description": "For polar chart only.Sets the angular coordinates.", + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the angular coordinates.", "editType": "calc", "role": "data", "valType": "data_array" @@ -9249,7 +10376,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -9350,7 +10476,7 @@ } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -9410,7 +10536,7 @@ "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -9449,6 +10575,22 @@ "valType": "string" } }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none", + "role": "info", + "valType": "string" + }, "reversescale": { "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", "dflt": false, @@ -9550,7 +10692,7 @@ } }, "r": { - "description": "For polar chart only.Sets the radial coordinates.", + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the radial coordinates.", "editType": "calc", "role": "data", "valType": "data_array" @@ -9561,6 +10703,44 @@ "role": "info", "valType": "string" }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -9590,7 +10770,7 @@ } }, "t": { - "description": "For polar chart only.Sets the angular coordinates.", + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the angular coordinates.", "editType": "calc", "role": "data", "valType": "data_array" @@ -9687,6 +10867,38 @@ "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -10453,6 +11665,21 @@ "role": "info", "valType": "string" }, + "notched": { + "description": "Determines whether or not notches should be drawn.", + "editType": "calcIfAutorange", + "role": "style", + "valType": "boolean" + }, + "notchwidth": { + "description": "Sets the width of the notches relative to the box' width. For example, with 0, the notches are as wide as the box(es).", + "dflt": 0.25, + "editType": "calcIfAutorange", + "max": 0.5, + "min": 0, + "role": "style", + "valType": "number" + }, "opacity": { "description": "Sets the opacity of the trace.", "dflt": 1, @@ -10480,6 +11707,41 @@ "role": "style", "valType": "number" }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -10529,6 +11791,35 @@ "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -10997,6 +12288,12 @@ "role": "info", "valType": "string" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -12397,6 +13694,12 @@ "role": "style", "valType": "number" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -12826,7 +14129,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -13146,6 +14448,22 @@ "valType": "string" } }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the locations.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none", + "role": "info", + "valType": "string" + }, "role": "object" }, "name": { @@ -13170,6 +14488,28 @@ "role": "style", "valType": "boolean" }, + "selected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -13226,6 +14566,22 @@ "role": "info", "valType": "string" }, + "unselected": { + "editType": "plot", + "marker": { + "editType": "plot", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -13630,7 +14986,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -13806,6 +15161,28 @@ "role": "style", "valType": "string" }, + "operation": { + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", + "dflt": "=", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ] + }, "role": "object", "showlabels": { "description": "Determines whether to label the contour lines with their values.", @@ -13841,6 +15218,24 @@ }, "role": "style", "valType": "number" + }, + "type": { + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", + "dflt": "levels", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ] + }, + "value": { + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", + "dflt": 0, + "editType": "calc", + "role": "info", + "valType": "any" } }, "customdata": { @@ -13875,6 +15270,12 @@ "role": "info", "valType": "number" }, + "fillcolor": { + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "role": "style", + "valType": "color" + }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", @@ -14081,6 +15482,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -14763,7 +16170,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -14872,13 +16278,6 @@ "role": "style", "valType": "colorscale" }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the `z` data are filled in.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, "contours": { "coloring": { "description": "Determines the coloring method showing the contour values. If *fill*, coloring is done evenly between each contour level If *lines*, coloring is done on the contour lines. If *none*, no coloring is applied on this trace.", @@ -14903,6 +16302,10 @@ "role": "style", "valType": "number" }, + "impliedEdits": { + "autocontour": false, + "role": "object" + }, "labelfont": { "color": { "editType": "style", @@ -14935,7 +16338,7 @@ "valType": "string" }, "operation": { - "description": "Sets the filter operation. *=* keeps items equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to value[1]` including both bounds` *()* keeps items inside `value[0]` to value[1]` excluding both bounds` *[)* keeps items inside `value[0]` to value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to value[1]` and equal to both bounds` *)(* keeps items outside `value[0]` to value[1]` *](* keeps items outside `value[0]` to value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to value[1]` and equal to `value[1]`", + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", "dflt": "=", "editType": "calc", "role": "info", @@ -14953,9 +16356,7 @@ "][", ")(", "](", - ")[", - "{}", - "}{" + ")[" ] }, "role": "object", @@ -15006,7 +16407,7 @@ ] }, "value": { - "description": "Sets the value or values by which to filter by. Values are expected to be in the same type as the data linked to *target*. When `operation` is set to one of the inequality values (=,<,>=,>,<=) *value* is expected to be a number or a string. When `operation` is set to one of the interval value ([],(),[),(],][,)(,](,)[) *value* is expected to be 2-item array where the first item is the lower bound and the second item is the upper bound. When `operation`, is set to one of the set value ({},}{) *value* is expected to be an array with as many items as the desired set elements.", + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", "dflt": 0, "editType": "calc", "role": "info", @@ -15046,7 +16447,7 @@ "valType": "number" }, "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "description": "Sets the fill color if `contours.type` is *constraint*. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", "editType": "calc", "role": "style", "valType": "color" @@ -15227,19 +16628,6 @@ "valType": "number" } }, - "mode": { - "description": "The mode.", - "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "lines", - "fill" - ], - "role": "info", - "valType": "flaglist" - }, "name": { "description": "Sets the trace name. The trace name appear as the legend item and on hover.", "editType": "style", @@ -15270,6 +16658,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -15742,7 +17136,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -16046,6 +17439,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -16672,7 +18071,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "calc", "role": "info", "valType": "string" @@ -16969,6 +18367,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -18024,7 +19428,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -18125,7 +19528,7 @@ } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -18185,7 +19588,7 @@ "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -18224,6 +19627,22 @@ "valType": "string" } }, + "opacity": { + "arrayOk": true, + "description": "Sets the opacity of the bars.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none", + "role": "info", + "valType": "string" + }, "reversescale": { "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", "dflt": false, @@ -18281,6 +19700,44 @@ "h" ] }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -18330,6 +19787,38 @@ "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -18910,7 +20399,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -19247,6 +20735,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -19909,7 +21403,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -20078,6 +21571,28 @@ "role": "style", "valType": "string" }, + "operation": { + "description": "Sets the constraint operation. *=* keeps regions equal to `value` *<* and *<=* keep regions less than `value` *>* and *>=* keep regions greater than `value` *[]*, *()*, *[)*, and *(]* keep regions inside `value[0]` to `value[1]` *][*, *)(*, *](*, *)[* keep regions outside `value[0]` to value[1]` Open vs. closed intervals make no difference to constraint display, but all versions are allowed for consistency with filter transforms.", + "dflt": "=", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "=", + "<", + ">=", + ">", + "<=", + "[]", + "()", + "[)", + "(]", + "][", + ")(", + "](", + ")[" + ] + }, "role": "object", "showlabels": { "description": "Determines whether to label the contour lines with their values.", @@ -20113,6 +21628,24 @@ }, "role": "style", "valType": "number" + }, + "type": { + "description": "If `levels`, the data is represented as a contour plot with multiple levels displayed. If `constraint`, the data is represented as constraints with the invalid region shaded as specified by the `operation` and `value` parameters.", + "dflt": "levels", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "levels", + "constraint" + ] + }, + "value": { + "description": "Sets the value or values of the constraint boundary. When `operation` is set to one of the comparison values (=,<,>=,>,<=) *value* is expected to be a number. When `operation` is set to one of the interval values ([],(),[),(],][,)(,](,)[) *value* is expected to be an array of two numbers where the first is the lower bound and the second is the upper bound.", + "dflt": 0, + "editType": "calc", + "role": "info", + "valType": "any" } }, "customdata": { @@ -20393,6 +21926,12 @@ "role": "style", "valType": "boolean" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -21044,7 +22583,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -21145,7 +22683,7 @@ } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -21227,7 +22765,7 @@ "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", "dflt": "all", - "editType": "none", + "editType": "calc", "extras": [ "all", "none", @@ -21532,6 +23070,12 @@ "role": "info", "valType": "subplotid" }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -21567,6 +23111,20 @@ "valType": "string" } }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with the vertices. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, "type": "mesh3d", "uid": { "dflt": "", @@ -21777,34 +23335,580 @@ "valType": "number" } }, - "name": { - "description": "Sets the segment name. The segment name appear as the legend item and on hover.", - "editType": "style", + "name": { + "description": "Sets the segment name. The segment name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "role": "object", + "showlegend": { + "description": "Determines whether or not an item corresponding to this segment is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + } + }, + "high": { + "description": "Sets the high values.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "highsrc": { + "description": "Sets the source reference on plot.ly for high .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "role": "info", + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hoverlabel": { + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "role": "style", + "valType": "color" + }, + "bgcolorsrc": { + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "role": "style", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "editType": "none", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "none", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "editType": "none", + "min": -1, + "role": "style", + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "increasing": { + "editType": "style", + "line": { + "color": { + "description": "Sets the line color.", + "dflt": "#3D9970", + "editType": "style", + "role": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "role": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "name": { + "description": "Sets the segment name. The segment name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "role": "object", + "showlegend": { + "description": "Determines whether or not an item corresponding to this segment is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + } + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "line": { + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`.", + "dflt": "solid", + "editType": "style", + "role": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, + "editType": "style", + "role": "object", + "width": { + "description": "[object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", + "dflt": 2, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "low": { + "description": "Sets the low values.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "lowsrc": { + "description": "Sets the source reference on plot.ly for low .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "open": { + "description": "Sets the open values.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "opensrc": { + "description": "Sets the source reference on plot.ly for open .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "role": "info", + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", + "editType": "calc", + "noBlank": true, + "role": "info", + "strict": true, + "valType": "string" + } + }, + "text": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the width of the open/close tick marks relative to the *x* minimal interval.", + "dflt": 0.3, + "editType": "calcIfAutorange", + "max": 0.5, + "min": 0, + "role": "style", + "valType": "number" + }, + "type": "ohlc", + "uid": { + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + } + }, + "meta": { + "description": "The ohlc (short for Open-High-Low-Close) is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The tip of the lines represent the `low` and `high` values and the horizontal segments represent the `open` and `close` values. Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing candles are drawn in green whereas decreasing are drawn in red." + } + }, + "parcoords": { + "attributes": { + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "dimensions": { + "items": { + "dimension": { + "constraintrange": { + "description": "The domain range to which the filter on the dimension is constrained. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + }, + "description": "The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.", + "editType": "calc", + "label": { + "description": "The shown name of the dimension.", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "range": { + "description": "The domain range that represents the full, shown axis extent. Defaults to the `values` extent. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "number" + }, + { + "editType": "calc", + "valType": "number" + } + ], + "role": "info", + "valType": "info_array" + }, + "role": "object", + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", + "dflt": "3s", + "editType": "calc", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "values": { + "description": "Dimension values. `values[n]` represents the value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated). Each value must be a finite number.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on plot.ly for values .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + } + }, + "role": "object" + }, + "domain": { + "editType": "calc", + "role": "object", + "x": { + "description": "Sets the horizontal domain of this parcoords trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "max": 1, + "min": 0, + "valType": "number" + }, + { + "max": 1, + "min": 0, + "valType": "number" + } + ], "role": "info", - "valType": "string" + "valType": "info_array" }, - "role": "object", - "showlegend": { - "description": "Determines whether or not an item corresponding to this segment is shown in the legend.", - "dflt": true, - "editType": "style", + "y": { + "description": "Sets the vertical domain of this parcoords trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], + "editType": "calc", + "items": [ + { + "max": 1, + "min": 0, + "valType": "number" + }, + { + "max": 1, + "min": 0, + "valType": "number" + } + ], "role": "info", - "valType": "boolean" + "valType": "info_array" } }, - "high": { - "description": "Sets the high values.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "highsrc": { - "description": "Sets the source reference on plot.ly for high .", - "editType": "none", - "role": "info", - "valType": "string" - }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", @@ -21864,172 +23968,679 @@ "arrayOk": true, "editType": "none", "role": "style", - "valType": "color" + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "editType": "none", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "none", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "namelength": { + "arrayOk": true, + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "editType": "none", + "min": -1, + "role": "style", + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "labelfont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets the font for the `dimension` labels.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "line": { + "autocolorscale": { + "description": "Has an effect only if line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. The default value is false, so that `parcoords` colorscale can default to `Viridis`.", + "dflt": false, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "role": "info", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "integer" + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "colorbars", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "role": "style", "valType": "string" }, - "description": "Sets the font used in hover labels.", - "editType": "none", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "none", - "noBlank": true, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", "role": "style", - "strict": true, "valType": "string" }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", "editType": "none", "role": "info", "valType": "string" }, - "role": "object", - "size": { - "arrayOk": true, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", "editType": "none", - "min": 1, + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, "role": "style", "valType": "number" }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", + "title": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", "role": "info", "valType": "string" - } - }, - "namelength": { - "arrayOk": true, - "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "editType": "none", - "min": -1, - "role": "style", - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on plot.ly for namelength .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on plot.ly for ids .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "increasing": { - "editType": "style", - "line": { - "color": { - "description": "Sets the line color.", - "dflt": "#3D9970", - "editType": "style", + }, + "titlefont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "titleside": { + "description": "Determines the location of the colorbar title with respect to the color bar.", + "dflt": "top", + "editType": "colorbars", "role": "style", - "valType": "color" + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "style", + "x": { + "description": "Sets the x position of the color bar (in plot fraction).", + "dflt": 1.02, + "editType": "colorbars", + "max": 3, + "min": -2, "role": "style", - "valType": "string", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "dflt": "left", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" + "left", + "center", + "right" ] }, - "editType": "style", - "role": "object", - "width": { - "description": "Sets the line width (in px).", - "dflt": 2, - "editType": "style", + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, + "editType": "colorbars", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" } }, - "name": { - "description": "Sets the segment name. The segment name appear as the legend item and on hover.", - "editType": "style", + "colorscale": { + "description": "Sets the colorscale and only has an effect if `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "dflt": [ + [ + 0, + "#440154" + ], + [ + 0.06274509803921569, + "#48186a" + ], + [ + 0.12549019607843137, + "#472d7b" + ], + [ + 0.18823529411764706, + "#424086" + ], + [ + 0.25098039215686274, + "#3b528b" + ], + [ + 0.3137254901960784, + "#33638d" + ], + [ + 0.3764705882352941, + "#2c728e" + ], + [ + 0.4392156862745098, + "#26828e" + ], + [ + 0.5019607843137255, + "#21918c" + ], + [ + 0.5647058823529412, + "#1fa088" + ], + [ + 0.6274509803921569, + "#28ae80" + ], + [ + 0.6901960784313725, + "#3fbc73" + ], + [ + 0.7529411764705882, + "#5ec962" + ], + [ + 0.8156862745098039, + "#84d44b" + ], + [ + 0.8784313725490196, + "#addc30" + ], + [ + 0.9411764705882353, + "#d8e219" + ], + [ + 1, + "#fde725" + ] + ], + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", "role": "info", "valType": "string" }, - "role": "object", - "showlegend": { - "description": "Determines whether or not an item corresponding to this segment is shown in the legend.", - "dflt": true, - "editType": "style", - "role": "info", - "valType": "boolean" - } - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "role": "info", - "valType": "string" - }, - "line": { - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*). Note that this style setting can also be set per direction via `increasing.line.dash` and `decreasing.line.dash`.", - "dflt": "solid", - "editType": "style", + "editType": "calc", + "reversescale": { + "description": "Has an effect only if `line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", "role": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] + "valType": "boolean" }, - "editType": "style", "role": "object", - "width": { - "description": "[object Object] Note that this style setting can also be set per direction via `increasing.line.width` and `decreasing.line.width`.", - "dflt": 2, - "editType": "style", - "min": 0, - "role": "style", - "valType": "number" + "showscale": { + "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" } }, - "low": { - "description": "Sets the low values.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "lowsrc": { - "description": "Sets the source reference on plot.ly for low .", - "editType": "none", - "role": "info", - "valType": "string" - }, "name": { "description": "Sets the trace name. The trace name appear as the legend item and on hover.", "editType": "style", @@ -22045,18 +24656,35 @@ "role": "style", "valType": "number" }, - "open": { - "description": "Sets the open values.", - "dflt": [], + "rangefont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets the font for the `dimension` range values.", "editType": "calc", - "role": "data", - "valType": "data_array" + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } }, - "opensrc": { - "description": "Sets the source reference on plot.ly for open .", - "editType": "none", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", "role": "info", - "valType": "string" + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -22086,105 +24714,55 @@ "valType": "string" } }, - "text": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sample point. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to this trace's sample points.", - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the width of the open/close tick marks relative to the *x* minimal interval.", - "dflt": 0.3, - "editType": "calcIfAutorange", - "max": 0.5, - "min": 0, - "role": "style", - "valType": "number" - }, - "type": "ohlc", - "uid": { - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates. If absent, linear coordinate will be generated.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", + "tickfont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets the font for the `dimension` tick values.", "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", + "type": "parcoords", + "uid": { + "dflt": "", + "editType": "calc", "role": "info", "valType": "string" }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", "role": "info", - "valType": "subplotid" + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] } }, "meta": { - "description": "The ohlc (short for Open-High-Low-Close) is a style of financial chart describing open, high, low and close for a given `x` coordinate (most likely time). The tip of the lines represent the `low` and `high` values and the horizontal segments represent the `open` and `close` values. Sample points where the close value is higher (lower) then the open value are called increasing (decreasing). By default, increasing candles are drawn in green whereas decreasing are drawn in red." + "description": "Parallel coordinates for multidimensional exploratory data analysis. The samples are specified in `dimensions`. The colors are set in `line.color`." } }, - "parcoords": { + "pie": { "attributes": { "customdata": { "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", @@ -22198,110 +24776,29 @@ "role": "info", "valType": "string" }, - "dimensions": { - "items": { - "dimension": { - "constraintrange": { - "description": "The domain range to which the filter on the dimension is constrained. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "description": "The dimensions (variables) of the parallel coordinates chart. 2..60 dimensions are supported.", - "editType": "calc", - "label": { - "description": "The shown name of the dimension.", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "range": { - "description": "The domain range that represents the full, shown axis extent. Defaults to the `values` extent. Must be an array of `[fromValue, toValue]` with finite numbers as elements.", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "number" - }, - { - "editType": "calc", - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "role": "object", - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", - "dflt": "3s", - "editType": "calc", - "role": "style", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "values": { - "description": "Dimension values. `values[n]` represents the value of the `n`th point in the dataset, therefore the `values` vector for all dimensions must be the same (longer vectors will be truncated). Each value must be a finite number.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on plot.ly for values .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "visible": { - "description": "Shows the dimension when set to `true` (the default). Hides the dimension for `false`.", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "boolean" - } - } - }, - "role": "object" + "direction": { + "description": "Specifies the direction at which succeeding sectors follow one another.", + "dflt": "counterclockwise", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "clockwise", + "counterclockwise" + ] + }, + "dlabel": { + "description": "Sets the label step. See `label0` for more info.", + "dflt": 1, + "editType": "calc", + "role": "info", + "valType": "number" }, "domain": { "editType": "calc", "role": "object", "x": { - "description": "Sets the horizontal domain of this `parcoords` trace (in plot fraction).", + "description": "Sets the horizontal domain of this pie trace (in plot fraction).", "dflt": [ 0, 1 @@ -22309,13 +24806,11 @@ "editType": "calc", "items": [ { - "editType": "calc", "max": 1, "min": 0, "valType": "number" }, { - "editType": "calc", "max": 1, "min": 0, "valType": "number" @@ -22325,7 +24820,7 @@ "valType": "info_array" }, "y": { - "description": "Sets the vertical domain of this `parcoords` trace (in plot fraction).", + "description": "Sets the vertical domain of this pie trace (in plot fraction).", "dflt": [ 0, 1 @@ -22333,13 +24828,11 @@ "editType": "calc", "items": [ { - "editType": "calc", "max": 1, "min": 0, "valType": "number" }, { - "editType": "calc", "max": 1, "min": 0, "valType": "number" @@ -22349,6 +24842,15 @@ "valType": "info_array" } }, + "hole": { + "description": "Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", @@ -22360,10 +24862,10 @@ "skip" ], "flags": [ - "x", - "y", - "z", + "label", "text", + "value", + "percent", "name" ], "role": "info", @@ -22464,6 +24966,20 @@ }, "role": "object" }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none", + "role": "info", + "valType": "string" + }, "ids": { "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", @@ -22476,13 +24992,230 @@ "role": "info", "valType": "string" }, - "labelfont": { + "insidetextfont": { + "color": { + "editType": "style", + "role": "style", + "valType": "color" + }, + "description": "Sets the font used for `textinfo` lying inside the pie.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "label0": { + "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", + "dflt": 0, + "editType": "calc", + "role": "info", + "valType": "number" + }, + "labels": { + "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "labelssrc": { + "description": "Sets the source reference on plot.ly for labels .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "marker": { + "colors": { + "description": "Sets the color of each sector of this pie chart. If not specified, the default trace color set is used to pick the sector colors.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "colorssrc": { + "description": "Sets the source reference on plot.ly for colors .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the line enclosing each sector.", + "dflt": "#444", + "editType": "style", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the line enclosing each sector.", + "dflt": 0, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "role": "object" + }, + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "outsidetextfont": { "color": { + "editType": "style", + "role": "style", + "valType": "color" + }, + "description": "Sets the font used for `textinfo` lying outside the pie.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "pull": { + "arrayOk": true, + "description": "Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "pullsrc": { + "description": "Sets the source reference on plot.ly for pull .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "rotation": { + "description": "Instead of the first slice starting at 12 o'clock, rotate to some other angle.", + "dflt": 0, + "editType": "calc", + "max": 360, + "min": -360, + "role": "style", + "valType": "number" + }, + "scalegroup": { + "description": "If there are multiple pies that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + }, + "sort": { + "description": "Determines whether or not the sectors are reordered from largest to smallest.", + "dflt": true, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "role": "info", + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", "editType": "calc", + "noBlank": true, + "role": "info", + "strict": true, + "valType": "string" + } + }, + "text": { + "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "textfont": { + "color": { + "editType": "style", "role": "style", "valType": "color" }, - "description": "Sets the font for the `dimension` labels.", + "description": "Sets the font used for `textinfo`.", "editType": "calc", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", @@ -22500,586 +25233,319 @@ "valType": "number" } }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", + "textinfo": { + "description": "Determines which trace information appear on the graph.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "label", + "text", + "value", + "percent" + ], + "role": "info", + "valType": "flaglist" + }, + "textposition": { + "arrayOk": true, + "description": "Specifies the location of the `textinfo`.", + "dflt": "auto", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "inside", + "outside", + "auto", + "none" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "pie", + "uid": { + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "values": { + "description": "Sets the values of the sectors of this pie chart. If omitted, we count occurrences of each label.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on plot.ly for values .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } + }, + "layoutAttributes": { + "hiddenlabels": { + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "hiddenlabelssrc": { + "description": "Sets the source reference on plot.ly for hiddenlabels .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "meta": { + "description": "A data visualized by the sectors of the pie is set in `values`. The sector labels are set in `labels`. The sector colors are set in `marker.colors`" + } + }, + "pointcloud": { + "attributes": { + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "role": "info", + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none", "role": "info", "valType": "string" }, - "line": { - "autocolorscale": { - "description": "Has an effect only if line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed. The default value is false, so that `parcoords` colorscale can default to `Viridis`.", - "dflt": false, - "editType": "calc", - "impliedEdits": {}, + "hoverlabel": { + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", "role": "style", - "valType": "boolean" - }, - "cauto": { - "description": "Has an effect only if `line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "info", - "valType": "boolean" - }, - "cmax": { - "description": "Has an effect only if `line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" + "valType": "color" }, - "cmin": { - "description": "Has an effect only if `line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, + "bgcolorsrc": { + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none", "role": "info", - "valType": "number" + "valType": "string" }, - "color": { + "bordercolor": { "arrayOk": true, - "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "calc", + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", "role": "style", "valType": "color" }, - "colorbar": { - "bgcolor": { - "description": "Sets the color of padded area.", - "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "bordercolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "editType": "colorbars", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" - ] - }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", - "editType": "colorbars", - "role": "info", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "integer" - }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", - "dflt": 1, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, - "editType": "colorbars", - "role": "style", - "valType": "boolean" - }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, - "editType": "colorbars", - "role": "style", - "valType": "boolean" - }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] - }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "fraction", - "pixels" - ] - }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "colorbars", - "role": "style", - "valType": "angle" - }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "colorbars", + "bordercolorsrc": { + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "font": { + "color": { + "arrayOk": true, + "editType": "none", "role": "style", "valType": "color" }, - "tickfont": { - "color": { - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "description": "Sets the color bar's tick label font", - "editType": "colorbars", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "colorbars", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "colorbars", - "role": "style", - "valType": "string" - }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", - "items": [ - { - "editType": "colorbars", - "valType": "any" - }, - { - "editType": "colorbars", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "colorbars", - "role": "object", - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "colorbars", - "role": "style", - "valType": "string" - } - } - }, - "role": "object" - }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] - }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", - "editType": "colorbars", - "role": "style", - "valType": "string" - }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] - }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", - "editType": "colorbars", - "role": "style", - "valType": "string" - }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", - "role": "data", - "valType": "data_array" - }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", "editType": "none", "role": "info", "valType": "string" }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", - "role": "data", - "valType": "data_array" - }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", + "description": "Sets the font used in hover labels.", + "editType": "none", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", - "role": "info", - "valType": "string" - }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "colorbars", - "min": 0, + "noBlank": true, "role": "style", - "valType": "number" - }, - "title": { - "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", - "editType": "colorbars", - "role": "info", + "strict": true, "valType": "string" }, - "titlefont": { - "color": { - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "description": "Sets this color bar's title font.", - "editType": "colorbars", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "colorbars", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "titleside": { - "description": "Determines the location of the colorbar title with respect to the color bar.", - "dflt": "top", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "x": { - "description": "Sets the x position of the color bar (in plot fraction).", - "dflt": 1.02, - "editType": "colorbars", - "max": 3, - "min": -2, - "role": "style", - "valType": "number" - }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", - "dflt": "left", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, - "role": "style", - "valType": "number" - }, - "y": { - "description": "Sets the y position of the color bar (in plot fraction).", - "dflt": 0.5, - "editType": "colorbars", - "max": 3, - "min": -2, - "role": "style", - "valType": "number" - }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", - "dflt": "middle", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", - "min": 0, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, "role": "style", "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "dflt": [ - [ - 0, - "#440154" - ], - [ - 0.06274509803921569, - "#48186a" - ], - [ - 0.12549019607843137, - "#472d7b" - ], - [ - 0.18823529411764706, - "#424086" - ], - [ - 0.25098039215686274, - "#3b528b" - ], - [ - 0.3137254901960784, - "#33638d" - ], - [ - 0.3764705882352941, - "#2c728e" - ], - [ - 0.4392156862745098, - "#26828e" - ], - [ - 0.5019607843137255, - "#21918c" - ], - [ - 0.5647058823529412, - "#1fa088" - ], - [ - 0.6274509803921569, - "#28ae80" - ], - [ - 0.6901960784313725, - "#3fbc73" - ], - [ - 0.7529411764705882, - "#5ec962" - ], - [ - 0.8156862745098039, - "#84d44b" - ], - [ - 0.8784313725490196, - "#addc30" - ], - [ - 0.9411764705882353, - "#d8e219" - ], - [ - 1, - "#fde725" - ] - ], - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, + "namelength": { + "arrayOk": true, + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "editType": "none", + "min": -1, "role": "style", - "valType": "colorscale" + "valType": "integer" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", "editType": "none", "role": "info", "valType": "string" }, + "role": "object" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", - "reversescale": { - "description": "Has an effect only if `line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, + "role": "data", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "indices": { + "description": "A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "indicessrc": { + "description": "Sets the source reference on plot.ly for indices .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "marker": { + "blend": { + "description": "Determines if colors are blended together for a translucency effect in case `opacity` is specified as a value less then `1`. Setting `blend` to `true` reduces zoom/pan speed if used with large numbers of points.", + "dflt": null, "editType": "calc", "role": "style", "valType": "boolean" }, + "border": { + "arearatio": { + "description": "Specifies what fraction of the marker area is covered with the border.", + "dflt": 0, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "color": { + "arrayOk": false, + "description": "Sets the stroke color. It accepts a specific color. If the color is not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "role": "object" + }, + "color": { + "arrayOk": false, + "description": "Sets the marker fill color. It accepts a specific color.If the color is not fully opaque and there are hundreds of thousandsof points, it may cause slower zooming and panning.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity. The default value is `1` (fully opaque). If the markers are not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. Opacity fades the color even if `blend` is left on `false` even if there is no translucency effect in that case.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, "role": "object", - "showscale": { - "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", - "dflt": false, + "sizemax": { + "description": "Sets the maximum size (in px) of the rendered marker points. Effective when the `pointcloud` shows only few points.", + "dflt": 20, "editType": "calc", - "role": "info", - "valType": "boolean" + "min": 0.1, + "role": "style", + "valType": "number" + }, + "sizemin": { + "description": "Sets the minimum size (in px) of the rendered marker points, effective when the `pointcloud` shows a million or more points.", + "dflt": 0.5, + "editType": "calc", + "max": 2, + "min": 0.1, + "role": "style", + "valType": "number" } }, "name": { @@ -23097,29 +25563,11 @@ "role": "style", "valType": "number" }, - "rangefont": { - "color": { - "editType": "calc", - "role": "style", - "valType": "color" - }, - "description": "Sets the font for the `dimension` range values.", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } + "role": "info", + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -23149,31 +25597,21 @@ "valType": "string" } }, - "tickfont": { - "color": { - "editType": "calc", - "role": "style", - "valType": "color" - }, - "description": "Sets the font for the `dimension` tick values.", + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } + "role": "info", + "valType": "string" }, - "type": "parcoords", + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "pointcloud", "uid": { "dflt": "", "editType": "calc", @@ -23191,14 +25629,101 @@ false, "legendonly" ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "xbounds": { + "description": "Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "xboundssrc": { + "description": "Sets the source reference on plot.ly for xbounds .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "xy": { + "description": "Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]`", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "xysrc": { + "description": "Sets the source reference on plot.ly for xy .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "ybounds": { + "description": "Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "yboundssrc": { + "description": "Sets the source reference on plot.ly for ybounds .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" } }, "meta": { - "description": "Parallel coordinates for multidimensional exploratory data analysis. The samples are specified in `dimensions`. The colors are set in `line.color`." + "description": "The data visualized as a point cloud set in `x` and `y` using the WebGl plotting engine." } }, - "pie": { + "sankey": { "attributes": { + "arrangement": { + "description": "If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary.", + "dflt": "snap", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "snap", + "perpendicular", + "freeform", + "fixed" + ] + }, "customdata": { "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", "editType": "calc", @@ -23211,29 +25736,11 @@ "role": "info", "valType": "string" }, - "direction": { - "description": "Specifies the direction at which succeeding sectors follow one another.", - "dflt": "counterclockwise", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "clockwise", - "counterclockwise" - ] - }, - "dlabel": { - "description": "Sets the label step. See `label0` for more info.", - "dflt": 1, - "editType": "calc", - "role": "info", - "valType": "number" - }, "domain": { "editType": "calc", "role": "object", "x": { - "description": "Sets the horizontal domain of this pie trace (in plot fraction).", + "description": "Sets the horizontal domain of this sankey trace (in plot fraction).", "dflt": [ 0, 1 @@ -23257,7 +25764,7 @@ "valType": "info_array" }, "y": { - "description": "Sets the vertical domain of this pie trace (in plot fraction).", + "description": "Sets the vertical domain of this sankey trace (in plot fraction).", "dflt": [ 0, 1 @@ -23281,20 +25788,11 @@ "valType": "info_array" } }, - "hole": { - "description": "Sets the fraction of the radius to cut out of the pie. Use this to make a donut chart.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", "dflt": "all", - "editType": "none", + "editType": "calc", "extras": [ "all", "none", @@ -23320,7 +25818,7 @@ "bgcolor": { "arrayOk": true, "description": "Sets the background color of the hover labels for this trace", - "editType": "none", + "editType": "calc", "role": "style", "valType": "color" }, @@ -23333,7 +25831,7 @@ "bordercolor": { "arrayOk": true, "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", + "editType": "calc", "role": "style", "valType": "color" }, @@ -23347,7 +25845,7 @@ "font": { "color": { "arrayOk": true, - "editType": "none", + "editType": "calc", "role": "style", "valType": "color" }, @@ -23358,11 +25856,11 @@ "valType": "string" }, "description": "Sets the font used in hover labels.", - "editType": "none", + "editType": "calc", "family": { "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "none", + "editType": "calc", "noBlank": true, "role": "style", "strict": true, @@ -23377,7 +25875,7 @@ "role": "object", "size": { "arrayOk": true, - "editType": "none", + "editType": "calc", "min": 1, "role": "style", "valType": "number" @@ -23392,7 +25890,7 @@ "namelength": { "arrayOk": true, "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "editType": "none", + "editType": "calc", "min": -1, "role": "style", "valType": "integer" @@ -23405,102 +25903,169 @@ }, "role": "object" }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each sector. If a single string, the same string appears for all data points. If an array of string, the items are mapped in order of this trace's sectors. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "style", + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none", "role": "info", "valType": "string" }, - "hovertextsrc": { - "description": "Sets the source reference on plot.ly for hovertext .", - "editType": "none", + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", "role": "info", "valType": "string" }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "link": { + "color": { + "arrayOk": true, + "description": "Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "The links of the Sankey plot.", "editType": "calc", - "role": "data", - "valType": "data_array" + "label": { + "description": "The shown name of the link.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "labelsrc": { + "description": "Sets the source reference on plot.ly for label .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "line": { + "color": { + "arrayOk": true, + "description": "Sets the color of the `line` around each `link`.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the `line` around each `link`.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "role": "object", + "source": { + "description": "An integer number `[0..nodes.length - 1]` that represents the source node.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "sourcesrc": { + "description": "Sets the source reference on plot.ly for source .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "target": { + "description": "An integer number `[0..nodes.length - 1]` that represents the target node.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "targetsrc": { + "description": "Sets the source reference on plot.ly for target .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "value": { + "description": "A numeric value representing the flow volume value.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "valuesrc": { + "description": "Sets the source reference on plot.ly for value .", + "editType": "none", + "role": "info", + "valType": "string" + } }, - "idssrc": { - "description": "Sets the source reference on plot.ly for ids .", - "editType": "none", + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", "role": "info", "valType": "string" }, - "insidetextfont": { + "node": { "color": { - "editType": "style", + "arrayOk": true, + "description": "Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node.", + "editType": "calc", "role": "style", "valType": "color" }, - "description": "Sets the font used for `textinfo` lying inside the pie.", - "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", "valType": "string" }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "label0": { - "description": "Alternate to `labels`. Builds a numeric set of labels. Use with `dlabel` where `label0` is the starting label and `dlabel` the step.", - "dflt": 0, - "editType": "calc", - "role": "info", - "valType": "number" - }, - "labels": { - "description": "Sets the sector labels. If `labels` entries are duplicated, we sum associated `values` or simply count occurrences if `values` is not provided. For other array attributes (including color) we use the first non-empty entry among all occurrences of the label.", + "description": "The nodes of the Sankey plot.", "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "labelssrc": { - "description": "Sets the source reference on plot.ly for labels .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "role": "info", - "valType": "string" - }, - "marker": { - "colors": { - "description": "Sets the color of each sector of this pie chart. If not specified, the default trace color set is used to pick the sector colors.", + "label": { + "description": "The shown name of the node.", + "dflt": [], "editType": "calc", "role": "data", "valType": "data_array" }, - "colorssrc": { - "description": "Sets the source reference on plot.ly for colors .", + "labelsrc": { + "description": "Sets the source reference on plot.ly for label .", "editType": "none", "role": "info", "valType": "string" }, - "editType": "calc", "line": { "color": { "arrayOk": true, - "description": "Sets the color of the line enclosing each sector.", + "description": "Sets the color of the `line` around each `node`.", "dflt": "#444", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, @@ -23514,9 +26079,9 @@ "role": "object", "width": { "arrayOk": true, - "description": "Sets the width (in px) of the line enclosing each sector.", - "dflt": 0, - "editType": "style", + "description": "Sets the width (in px) of the `line` around each `node`.", + "dflt": 0.5, + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -23528,78 +26093,51 @@ "valType": "string" } }, - "role": "object" - }, - "name": { - "description": "Sets the trace name. The trace name appear as the legend item and on hover.", - "editType": "style", - "role": "info", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "outsidetextfont": { - "color": { - "editType": "style", - "role": "style", - "valType": "color" - }, - "description": "Sets the font used for `textinfo` lying outside the pie.", - "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "pad": { + "arrayOk": false, + "description": "Sets the padding (in px) between the `nodes`.", + "dflt": 20, "editType": "calc", - "noBlank": true, + "min": 0, "role": "style", - "strict": true, - "valType": "string" + "valType": "number" }, "role": "object", - "size": { + "thickness": { + "arrayOk": false, + "description": "Sets the thickness (in px) of the `nodes`.", + "dflt": 20, "editType": "calc", "min": 1, "role": "style", "valType": "number" } }, - "pull": { - "arrayOk": true, - "description": "Sets the fraction of larger radius to pull the sectors out from the center. This can be a constant to pull all slices apart from each other equally or an array to highlight one or more slices.", - "dflt": 0, - "editType": "calc", + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", "max": 1, "min": 0, "role": "style", "valType": "number" }, - "pullsrc": { - "description": "Sets the source reference on plot.ly for pull .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "rotation": { - "description": "Instead of the first slice starting at 12 o'clock, rotate to some other angle.", - "dflt": 0, + "orientation": { + "description": "Sets the orientation of the Sankey diagram.", + "dflt": "h", "editType": "calc", - "max": 360, - "min": -360, "role": "style", - "valType": "number" + "valType": "enumerated", + "values": [ + "v", + "h" + ] }, - "scalegroup": { - "description": "If there are multiple pies that should be sized according to their totals, link them by providing a non-empty group id here shared by every trace in the same group.", - "dflt": "", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", "editType": "calc", "role": "info", - "valType": "string" + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -23608,13 +26146,6 @@ "role": "info", "valType": "boolean" }, - "sort": { - "description": "Determines whether or not the sectors are reordered from largest to smallest.", - "dflt": true, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, "stream": { "editType": "calc", "maxpoints": { @@ -23636,19 +26167,13 @@ "valType": "string" } }, - "text": { - "description": "Sets text elements associated with each sector. If trace `textinfo` contains a *text* flag, these elements will seen on the chart. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, "textfont": { "color": { - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, - "description": "Sets the font used for `textinfo`.", + "description": "Sets the font for node labels", "editType": "calc", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", @@ -23666,109 +26191,349 @@ "valType": "number" } }, - "textinfo": { - "description": "Determines which trace information appear on the graph.", + "type": "sankey", + "uid": { + "dflt": "", "editType": "calc", - "extras": [ - "none" - ], - "flags": [ - "label", - "text", - "value", - "percent" - ], "role": "info", - "valType": "flaglist" + "valType": "string" }, - "textposition": { - "arrayOk": true, - "description": "Specifies the location of the `textinfo`.", - "dflt": "auto", + "valueformat": { + "description": "Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", + "dflt": ".3s", + "editType": "calc", + "role": "style", + "valType": "string" + }, + "valuesuffix": { + "description": "Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value.", + "dflt": "", + "editType": "calc", + "role": "style", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, "editType": "calc", "role": "info", "valType": "enumerated", "values": [ - "inside", - "outside", - "auto", - "none" + true, + false, + "legendonly" ] - }, - "textpositionsrc": { - "description": "Sets the source reference on plot.ly for textposition .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", + } + }, + "meta": { + "description": "Sankey plots for network flow data analysis. The nodes are specified in `nodes` and the links between sources and targets in `links`. The colors are set in `nodes[i].color` and `links[i].color`; otherwise defaults are used." + } + }, + "scatter": { + "attributes": { + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": true, + "editType": "plot", "role": "info", - "valType": "string" + "valType": "boolean" }, - "type": "pie", - "uid": { - "dflt": "", + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, "editType": "calc", "role": "info", - "valType": "string" + "valType": "boolean" }, - "values": { - "description": "Sets the values of the sectors of this pie chart. If omitted, we count occurrences of each label.", + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", "editType": "calc", "role": "data", "valType": "data_array" }, - "valuessrc": { - "description": "Sets the source reference on plot.ly for values .", + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", "editType": "none", "role": "info", "valType": "string" }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, + "editType": "calc", + "role": "info", + "valType": "number" + }, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, + "editType": "calc", + "role": "info", + "valType": "number" + }, + "error_x": { + "_deprecated": { + "opacity": { + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "editType": "style", + "role": "style", + "valType": "number" + } + }, + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on plot.ly for array .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "color": { + "description": "Sets the stoke color of the error bars.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "copy_zstyle": { + "editType": "style", + "role": "style", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "role": "info", + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "role": "info", + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "error_y": { + "_deprecated": { + "opacity": { + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "editType": "style", + "role": "style", + "valType": "number" + } + }, + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on plot.ly for array .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "color": { + "description": "Sets the stoke color of the error bars.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "plot", + "role": "style", + "valType": "boolean" + }, + "copy_zstyle": { + "editType": "style", + "role": "style", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "style", + "min": 0, + "role": "info", + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "style", + "min": 0, + "role": "info", + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", "editType": "calc", - "role": "info", + "role": "style", "valType": "enumerated", "values": [ - true, - false, - "legendonly" + "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" ] - } - }, - "layoutAttributes": { - "hiddenlabels": { - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "hiddenlabelssrc": { - "description": "Sets the source reference on plot.ly for hiddenlabels .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "meta": { - "description": "A data visualized by the sectors of the pie is set in `values`. The sector labels are set in `labels`. The sector colors are set in `marker.colors`" - } - }, - "pointcloud": { - "attributes": { - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "role": "data", - "valType": "data_array" }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "role": "style", + "valType": "color" }, "hoverinfo": { "arrayOk": true, @@ -23885,26 +26650,38 @@ }, "role": "object" }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", - "editType": "calc", - "role": "data", - "valType": "data_array" + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "role": "info", + "valType": "flaglist" }, - "idssrc": { - "description": "Sets the source reference on plot.ly for ids .", + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on plot.ly for hovertext .", "editType": "none", "role": "info", "valType": "string" }, - "indices": { - "description": "A sequential value, 0..n, supply it to avoid creating this array inside plotting. If specified, it must be a typed `Int32Array` array. Its length must be equal to or greater than the number of points. For the best performance and memory use, create one large `indices` typed array that is guaranteed to be at least as long as the largest number of points during use, and reuse it on each `Plotly.restyle()` call.", + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", "role": "data", "valType": "data_array" }, - "indicessrc": { - "description": "Sets the source reference on plot.ly for indices .", + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", "editType": "none", "role": "info", "valType": "string" @@ -23916,446 +26693,550 @@ "role": "info", "valType": "string" }, - "marker": { - "blend": { - "description": "Determines if colors are blended together for a translucency effect in case `opacity` is specified as a value less then `1`. Setting `blend` to `true` reduces zoom/pan speed if used with large numbers of points.", - "dflt": null, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "border": { - "arearatio": { - "description": "Specifies what fraction of the marker area is covered with the border.", - "dflt": 0, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "color": { - "arrayOk": false, - "description": "Sets the stroke color. It accepts a specific color. If the color is not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "editType": "calc", - "role": "object" - }, + "line": { "color": { - "arrayOk": false, - "description": "Sets the marker fill color. It accepts a specific color.If the color is not fully opaque and there are hundreds of thousandsof points, it may cause slower zooming and panning.", - "editType": "calc", + "description": "Sets the line color.", + "editType": "style", "role": "style", "valType": "color" }, - "editType": "calc", - "opacity": { - "arrayOk": false, - "description": "Sets the marker opacity. The default value is `1` (fully opaque). If the markers are not fully opaque and there are hundreds of thousands of points, it may cause slower zooming and panning. Opacity fades the color even if `blend` is left on `false` even if there is no translucency effect in that case.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", "role": "style", - "valType": "number" + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] }, + "editType": "plot", "role": "object", - "sizemax": { - "description": "Sets the maximum size (in px) of the rendered marker points. Effective when the `pointcloud` shows only few points.", - "dflt": 20, - "editType": "calc", - "min": 0.1, + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "linear", + "spline", + "hv", + "vh", + "hvh", + "vhv" + ] + }, + "simplify": { + "description": "Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected.", + "dflt": true, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, "role": "style", "valType": "number" }, - "sizemin": { - "description": "Sets the minimum size (in px) of the rendered marker points, effective when the `pointcloud` shows a million or more points.", - "dflt": 0.5, - "editType": "calc", - "max": 2, - "min": 0.1, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", + "min": 0, "role": "style", "valType": "number" } }, - "name": { - "description": "Sets the trace name. The trace name appear as the legend item and on hover.", - "editType": "style", - "role": "info", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", - "role": "info", - "valType": "boolean" - }, - "stream": { - "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, + "marker": { + "autocolorscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, "editType": "calc", - "max": 10000, - "min": 0, + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `marker.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, "role": "info", "valType": "number" }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", - "editType": "calc", - "noBlank": true, + "cmin": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, "role": "info", - "strict": true, - "valType": "string" - } - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates.", - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "type": "pointcloud", - "uid": { - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" - }, - "xbounds": { - "description": "Specify `xbounds` in the shape of `[xMin, xMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `ybounds` for the performance benefits.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "xboundssrc": { - "description": "Sets the source reference on plot.ly for xbounds .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "xy": { - "description": "Faster alternative to specifying `x` and `y` separately. If supplied, it must be a typed `Float32Array` array that represents points such that `xy[i * 2] = x[i]` and `xy[i * 2 + 1] = y[i]`", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "xysrc": { - "description": "Sets the source reference on plot.ly for xy .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" - }, - "ybounds": { - "description": "Specify `ybounds` in the shape of `[yMin, yMax] to avoid looping through the `xy` typed array. Use it in conjunction with `xy` and `xbounds` for the performance benefits.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "yboundssrc": { - "description": "Sets the source reference on plot.ly for ybounds .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "ysrc": { - "description": "Sets the source reference on plot.ly for y .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "meta": { - "description": "The data visualized as a point cloud set in `x` and `y` using the WebGl plotting engine." - } - }, - "sankey": { - "attributes": { - "arrangement": { - "description": "If value is `snap` (the default), the node arrangement is assisted by automatic snapping of elements to preserve space between nodes specified via `nodepad`. If value is `perpendicular`, the nodes can only move along a line perpendicular to the flow. If value is `freeform`, the nodes can freely move on the plane. If value is `fixed`, the nodes are stationary.", - "dflt": "snap", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "snap", - "perpendicular", - "freeform", - "fixed" - ] - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "domain": { - "editType": "calc", - "role": "object", - "x": { - "description": "Sets the horizontal domain of this `sankey` trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "role": "info", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "integer" + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" - }, - "y": { - "description": "Sets the vertical domain of this `sankey` trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" }, - { - "editType": "calc", - "max": 1, - "min": 0, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", "valType": "number" } - ], - "role": "info", - "valType": "info_array" - } - }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "calc", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "label", - "text", - "value", - "percent", - "name" - ], - "role": "info", - "valType": "flaglist" - }, - "hoverinfosrc": { - "description": "Sets the source reference on plot.ly for hoverinfo .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "hoverlabel": { - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on plot.ly for bgcolor .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on plot.ly for bordercolor .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "font": { - "color": { - "arrayOk": true, - "editType": "calc", + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", "role": "style", - "valType": "color" + "valType": "string" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "colorbars", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "role": "style", "valType": "string" }, - "description": "Sets the font used in hover labels.", - "editType": "calc", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", "role": "style", - "strict": true, "valType": "string" }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", "editType": "none", "role": "info", "valType": "string" }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, "role": "style", "valType": "number" }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", + "title": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", "role": "info", "valType": "string" + }, + "titlefont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "titleside": { + "description": "Determines the location of the colorbar title with respect to the color bar.", + "dflt": "top", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "x": { + "description": "Sets the x position of the color bar (in plot fraction).", + "dflt": 1.02, + "editType": "colorbars", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "dflt": "left", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, + "editType": "colorbars", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" } }, - "namelength": { - "arrayOk": true, - "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "editType": "calc", - "min": -1, - "role": "style", - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on plot.ly for namelength .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object" - }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on plot.ly for ids .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", - "editType": "style", - "role": "info", - "valType": "string" - }, - "link": { - "color": { - "arrayOk": true, - "description": "Sets the `link` color. It can be a single value, or an array for specifying color for each `link`. If `link.color` is omitted, then by default, a translucent grey link will be used.", + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, "role": "style", - "valType": "color" + "valType": "colorscale" }, "colorsrc": { "description": "Sets the source reference on plot.ly for color .", @@ -24363,30 +27244,97 @@ "role": "info", "valType": "string" }, - "description": "The links of the Sankey plot.", "editType": "calc", - "label": { - "description": "The shown name of the link.", - "dflt": [], + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "labelsrc": { - "description": "Sets the source reference on plot.ly for label .", - "editType": "none", - "role": "info", - "valType": "string" + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on plot.ly for type .", + "editType": "none", + "role": "info", + "valType": "string" + } }, "line": { + "autocolorscale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, "color": { "arrayOk": true, - "description": "Sets the color of the `line` around each `link`.", - "dflt": "#444", - "editType": "calc", + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "style", "role": "style", "valType": "color" }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, "colorsrc": { "description": "Sets the source reference on plot.ly for color .", "editType": "none", @@ -24394,12 +27342,18 @@ "valType": "string" }, "editType": "calc", + "reversescale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, "role": "object", "width": { "arrayOk": true, - "description": "Sets the width (in px) of the `line` around each `link`.", - "dflt": 0, - "editType": "calc", + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", "min": 0, "role": "style", "valType": "number" @@ -24411,154 +27365,471 @@ "valType": "string" } }, - "role": "object", - "source": { - "description": "An integer number `[0..nodes.length - 1]` that represents the source node.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" }, - "sourcesrc": { - "description": "Sets the source reference on plot.ly for source .", + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", "editType": "none", "role": "info", "valType": "string" }, - "target": { - "description": "An integer number `[0..nodes.length - 1]` that represents the target node.", - "dflt": [], + "reversescale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, "editType": "calc", - "role": "data", - "valType": "data_array" + "role": "style", + "valType": "boolean" }, - "targetsrc": { - "description": "Sets the source reference on plot.ly for target .", + "role": "object", + "showscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calcIfAutorange", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", "editType": "none", "role": "info", "valType": "string" }, - "value": { - "description": "A numeric value representing the flow volume value.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "role": "style", + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ] }, - "valuesrc": { - "description": "Sets the source reference on plot.ly for value .", + "symbolsrc": { + "description": "Sets the source reference on plot.ly for symbol .", "editType": "none", "role": "info", "valType": "string" } }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "role": "info", + "valType": "flaglist" + }, "name": { "description": "Sets the trace name. The trace name appear as the legend item and on hover.", "editType": "style", "role": "info", "valType": "string" }, - "node": { - "color": { - "arrayOk": true, - "description": "Sets the `node` color. It can be a single value, or an array for specifying color for each `node`. If `node.color` is omitted, then the default `Plotly` color palette will be cycled through to have a variety of colors. These defaults are not fully opaque, to allow some visibility of what is beneath the node.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "description": "The nodes of the Sankey plot.", + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "r": { + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the radial coordinates.", "editType": "calc", - "label": { - "description": "The shown name of the node.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "labelsrc": { - "description": "Sets the source reference on plot.ly for label .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "line": { + "role": "data", + "valType": "data_array" + }, + "rsrc": { + "description": "Sets the source reference on plot.ly for r .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { "color": { - "arrayOk": true, - "description": "Sets the color of the `line` around each `node`.", - "dflt": "#444", - "editType": "calc", + "description": "Sets the marker color of selected points.", + "editType": "style", "role": "style", "valType": "color" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" }, - "editType": "calc", "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the `line` around each `node`.", - "dflt": 0.5, - "editType": "calc", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", "min": 0, "role": "style", "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on plot.ly for width .", - "editType": "none", - "role": "info", - "valType": "string" } }, - "pad": { - "arrayOk": false, - "description": "Sets the padding (in px) between the `nodes`.", - "dflt": 20, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, "role": "object", - "thickness": { - "arrayOk": false, - "description": "Sets the thickness (in px) of the `nodes`.", - "dflt": 20, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" } }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "orientation": { - "description": "Sets the orientation of the Sankey diagram.", - "dflt": "h", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "v", - "h" - ] + "role": "info", + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -24588,15 +27859,37 @@ "valType": "string" } }, + "t": { + "description": "For legacy polar chart only.Please switch to *scatterpolar* trace type.Sets the angular coordinates.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, "textfont": { "color": { - "editType": "calc", + "arrayOk": true, + "editType": "style", "role": "style", "valType": "color" }, - "description": "Sets the font for node labels", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the text font.", "editType": "calc", "family": { + "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, @@ -24604,35 +27897,110 @@ "strict": true, "valType": "string" }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, "role": "object", "size": { + "arrayOk": true, "editType": "calc", "min": 1, "role": "style", "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "type": "sankey", - "uid": { - "dflt": "", + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none", "role": "info", "valType": "string" }, - "valueformat": { - "description": "Sets the value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", - "dflt": ".3s", - "editType": "calc", - "role": "style", + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", "valType": "string" }, - "valuesuffix": { - "description": "Adds a unit to follow the value in the hover tooltip. Add a space if a separation is necessary from the value.", + "tsrc": { + "description": "Sets the source reference on plot.ly for t .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "scatter", + "uid": { "dflt": "", "editType": "calc", - "role": "style", + "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -24644,21 +28012,116 @@ false, "legendonly" ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" } }, "meta": { - "description": "Sankey plots for network flow data analysis. The nodes are specified in `nodes` and the links between sources and targets in `links`. The colors are set in `nodes[i].color` and `links[i].color`; otherwise defaults are used." + "description": "The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts. The data visualized as scatter point or lines is set in `x` and `y`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." } }, - "scatter": { + "scatter3d": { "attributes": { - "cliponaxis": { - "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", - "dflt": true, - "editType": "plot", - "role": "info", - "valType": "boolean" - }, "connectgaps": { "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", "dflt": false, @@ -24678,25 +28141,11 @@ "role": "info", "valType": "string" }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "role": "info", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "role": "info", - "valType": "number" - }, "error_x": { "_deprecated": { "opacity": { "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "number" } @@ -24727,17 +28176,17 @@ }, "color": { "description": "Sets the stoke color of the error bars.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, "copy_ystyle": { - "editType": "plot", + "editType": "calc", "role": "style", "valType": "boolean" }, "copy_zstyle": { - "editType": "style", + "editType": "calc", "role": "style", "valType": "boolean" }, @@ -24752,21 +28201,21 @@ "thickness": { "description": "Sets the thickness (in px) of the error bars.", "dflt": 2, - "editType": "style", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "traceref": { "dflt": 0, - "editType": "style", + "editType": "calc", "min": 0, "role": "info", "valType": "integer" }, "tracerefminus": { "dflt": 0, - "editType": "style", + "editType": "calc", "min": 0, "role": "info", "valType": "integer" @@ -24807,7 +28256,7 @@ }, "width": { "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -24817,7 +28266,7 @@ "_deprecated": { "opacity": { "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "number" } @@ -24848,17 +28297,17 @@ }, "color": { "description": "Sets the stoke color of the error bars.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, "copy_ystyle": { - "editType": "plot", + "editType": "calc", "role": "style", "valType": "boolean" }, "copy_zstyle": { - "editType": "style", + "editType": "calc", "role": "style", "valType": "boolean" }, @@ -24873,21 +28322,21 @@ "thickness": { "description": "Sets the thickness (in px) of the error bars.", "dflt": 2, - "editType": "style", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "traceref": { "dflt": 0, - "editType": "style", + "editType": "calc", "min": 0, "role": "info", "valType": "integer" }, "tracerefminus": { "dflt": 0, - "editType": "style", + "editType": "calc", "min": 0, "role": "info", "valType": "integer" @@ -24928,39 +28377,138 @@ }, "width": { "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "plot", + "editType": "calc", "min": 0, "role": "style", "valType": "number" } }, - "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", - "dflt": "none", + "error_z": { + "_deprecated": { + "opacity": { + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "editType": "calc", + "role": "style", + "valType": "number" + } + }, + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on plot.ly for array .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "color": { + "description": "Sets the stoke color of the error bars.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "copy_zstyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "none", - "tozeroy", - "tozerox", - "tonexty", - "tonextx", - "toself", - "tonext" - ] - }, - "fillcolor": { - "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", - "role": "style", - "valType": "color" + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", "dflt": "all", - "editType": "none", + "editType": "calc", "extras": [ "all", "none", @@ -25071,21 +28619,11 @@ }, "role": "object" }, - "hoveron": { - "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", - "flags": [ - "points", - "fills" - ], - "role": "info", - "valType": "flaglist" - }, "hovertext": { "arrayOk": true, - "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", "dflt": "", - "editType": "style", + "editType": "calc", "role": "info", "valType": "string" }, @@ -25115,18 +28653,70 @@ "valType": "string" }, "line": { + "autocolorscale": { + "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, "color": { - "description": "Sets the line color.", - "editType": "style", + "arrayOk": true, + "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "calc", "role": "style", "valType": "color" }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "description": "Sets the dash style of the lines.", "dflt": "solid", - "editType": "style", + "editType": "calc", "role": "style", - "valType": "string", + "valType": "enumerated", "values": [ "solid", "dot", @@ -25136,43 +28726,26 @@ "longdashdot" ] }, - "editType": "plot", - "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", + "editType": "calc", + "reversescale": { + "description": "Has an effect only if `line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", "role": "style", - "valType": "enumerated", - "values": [ - "linear", - "spline", - "hv", - "vh", - "hvh", - "vhv" - ] + "valType": "boolean" }, - "simplify": { - "description": "Simplifies lines by removing nearly-collinear points. When transitioning lines, it may be desirable to disable this so that the number of points along the resulting SVG path is unaffected.", - "dflt": true, - "editType": "plot", + "role": "object", + "showscale": { + "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, + "editType": "calc", "role": "info", "valType": "boolean" }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "role": "style", - "valType": "number" - }, "width": { "description": "Sets the line width (in px).", "dflt": 2, - "editType": "style", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -25198,7 +28771,7 @@ "cmax": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmin` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -25208,7 +28781,7 @@ "cmin": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmax` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -25218,7 +28791,7 @@ "color": { "arrayOk": true, "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, @@ -25226,39 +28799,39 @@ "bgcolor": { "description": "Sets the color of padded area.", "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "bordercolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "borderwidth": { "description": "Sets the width (in px) or the border enclosing this color bar.", "dflt": 0, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "dtick": { "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", + "editType": "calc", "impliedEdits": { "tickmode": "linear" }, "role": "style", "valType": "any" }, - "editType": "colorbars", + "editType": "calc", "exponentformat": { "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", "dflt": "B", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25273,7 +28846,7 @@ "len": { "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", "dflt": 1, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -25281,7 +28854,7 @@ "lenmode": { "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", "dflt": "fraction", - "editType": "colorbars", + "editType": "calc", "role": "info", "valType": "enumerated", "values": [ @@ -25292,7 +28865,7 @@ "nticks": { "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", "dflt": 0, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "integer" @@ -25300,14 +28873,14 @@ "outlinecolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "outlinewidth": { "description": "Sets the width (in px) of the axis line.", "dflt": 1, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -25316,14 +28889,14 @@ "separatethousands": { "description": "If \"true\", even 4-digit integers are separated", "dflt": false, - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "boolean" }, "showexponent": { "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25336,14 +28909,14 @@ "showticklabels": { "description": "Determines whether or not the tick labels are drawn.", "dflt": true, - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "boolean" }, "showtickprefix": { "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25356,7 +28929,7 @@ "showticksuffix": { "description": "Same as `showtickprefix` but for tick suffixes.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25369,7 +28942,7 @@ "thickness": { "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", "dflt": 30, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -25377,7 +28950,7 @@ "thicknessmode": { "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", "dflt": "pixels", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25387,7 +28960,7 @@ }, "tick0": { "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", + "editType": "calc", "impliedEdits": { "tickmode": "linear" }, @@ -25397,28 +28970,28 @@ "tickangle": { "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", "dflt": "auto", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "angle" }, "tickcolor": { "description": "Sets the tick color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "tickfont": { "color": { - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "description": "Sets the color bar's tick label font", - "editType": "colorbars", + "editType": "calc", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", + "editType": "calc", "noBlank": true, "role": "style", "strict": true, @@ -25426,7 +28999,7 @@ }, "role": "object", "size": { - "editType": "colorbars", + "editType": "calc", "min": 1, "role": "style", "valType": "number" @@ -25435,7 +29008,7 @@ "tickformat": { "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, @@ -25444,26 +29017,26 @@ "tickformatstop": { "dtickrange": { "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", + "editType": "calc", "items": [ { - "editType": "colorbars", + "editType": "calc", "valType": "any" }, { - "editType": "colorbars", + "editType": "calc", "valType": "any" } ], "role": "info", "valType": "info_array" }, - "editType": "colorbars", + "editType": "calc", "role": "object", "value": { "description": "string - dtickformat for described zoom level, the same as *tickformat*", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" } @@ -25474,14 +29047,14 @@ "ticklen": { "description": "Sets the tick length (in px).", "dflt": 5, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "tickmode": { "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", + "editType": "calc", "impliedEdits": {}, "role": "info", "valType": "enumerated", @@ -25494,14 +29067,14 @@ "tickprefix": { "description": "Sets a tick label prefix.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, "ticks": { "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -25513,13 +29086,13 @@ "ticksuffix": { "description": "Sets a tick label suffix.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, "ticktext": { "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", + "editType": "calc", "role": "data", "valType": "data_array" }, @@ -25531,7 +29104,7 @@ }, "tickvals": { "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", + "editType": "calc", "role": "data", "valType": "data_array" }, @@ -25544,134 +29117,823 @@ "tickwidth": { "description": "Sets the tick width (in px).", "dflt": 1, - "editType": "colorbars", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "title": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "titleside": { + "description": "Determines the location of the colorbar title with respect to the color bar.", + "dflt": "top", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "x": { + "description": "Sets the x position of the color bar (in plot fraction).", + "dflt": 1.02, + "editType": "calc", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "dflt": "left", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, + "editType": "calc", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "reversescale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 8, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type.", + "dflt": "circle", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "circle", + "circle-open", + "square", + "square-open", + "diamond", + "diamond-open", + "cross", + "x" + ] + }, + "symbolsrc": { + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "lines+markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "role": "info", + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "projection": { + "editType": "calc", + "role": "object", + "x": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, "min": 0, "role": "style", "valType": "number" }, - "title": { - "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", - "editType": "colorbars", - "role": "info", - "valType": "string" - }, - "titlefont": { - "color": { - "editType": "colorbars", - "role": "style", - "valType": "color" - }, - "description": "Sets this color bar's title font.", - "editType": "colorbars", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "colorbars", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "titleside": { - "description": "Determines the location of the colorbar title with respect to the color bar.", - "dflt": "top", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] - }, - "x": { - "description": "Sets the x position of the color bar (in plot fraction).", - "dflt": 1.02, - "editType": "colorbars", - "max": 3, - "min": -2, + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, + "min": 0, "role": "style", "valType": "number" }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", - "dflt": "left", - "editType": "colorbars", - "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, - "editType": "colorbars", + "show": { + "description": "Sets whether or not projections are shown along the x axis.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "y": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, "min": 0, "role": "style", "valType": "number" }, - "y": { - "description": "Sets the y position of the color bar (in plot fraction).", - "dflt": 0.5, - "editType": "colorbars", - "max": 3, - "min": -2, + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, + "min": 0, "role": "style", "valType": "number" }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", - "dflt": "middle", - "editType": "colorbars", + "show": { + "description": "Sets whether or not projections are shown along the y axis.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "z": { + "editType": "calc", + "opacity": { + "description": "Sets the projection color.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, "role": "style", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] + "valType": "number" }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "colorbars", + "role": "object", + "scale": { + "description": "Sets the scale factor determining the size of the projection marker points.", + "dflt": 0.6666666666666666, + "editType": "calc", + "max": 10, "min": 0, "role": "style", "valType": "number" + }, + "show": { + "description": "Sets whether or not projections are shown along the z axis.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" } + } + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "role": "info", + "valType": "number" + }, + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", + "editType": "calc", + "noBlank": true, + "role": "info", + "strict": true, + "valType": "string" + } + }, + "surfaceaxis": { + "description": "If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively.", + "dflt": -1, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + -1, + 0, + 1, + 2 + ] + }, + "surfacecolor": { + "description": "Sets the surface fill color.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the text font.", + "editType": "calc", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "top center", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "scatter3d", + "uid": { + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "zcalendar": { + "description": "Sets the calendar system to use with `z` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "zsrc": { + "description": "Sets the source reference on plot.ly for z .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "meta": { + "description": "The data visualized as scatter point or lines in 3D dimension is set in `x`, `y`, `z`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` Projections are achieved via `projection`. Surface fills are achieved via `surfaceaxis`.", + "hrName": "scatter_3d" + } + }, + "scattercarpet": { + "attributes": { + "a": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "asrc": { + "description": "Sets the source reference on plot.ly for a .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "b": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "bsrc": { + "description": "Sets the source reference on plot.ly for b .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "carpet": { + "description": "An identifier for this carpet, so that `scattercarpet` and `scattercontour` traces can specify a carpet plot on which they lie", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "a", + "b", + "text", + "name", + "name" + ], + "role": "info", + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hoverlabel": { + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "role": "style", + "valType": "color" }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, + "bgcolorsrc": { + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", "role": "style", - "valType": "colorscale" + "valType": "color" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", + "bordercolorsrc": { + "description": "Sets the source reference on plot.ly for bordercolor .", "editType": "none", "role": "info", "valType": "string" }, "editType": "calc", - "gradient": { + "font": { "color": { "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", + "editType": "none", "role": "style", "valType": "color" }, @@ -25681,581 +29943,616 @@ "role": "info", "valType": "string" }, - "editType": "calc", - "role": "object", - "type": { + "description": "Sets the font used in hover labels.", + "editType": "none", + "family": { "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on plot.ly for type .", + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "none", - "role": "info", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "style", - "valType": "boolean" - }, - "cauto": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "info", - "valType": "boolean" - }, - "cmax": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, - "cmin": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "plot", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "style", - "role": "style", - "valType": "color" - }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, + "noBlank": true, "role": "style", - "valType": "colorscale" + "strict": true, + "valType": "string" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", "editType": "none", "role": "info", "valType": "string" }, - "editType": "calc", - "reversescale": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, "role": "object", - "width": { + "size": { "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", - "min": 0, + "editType": "none", + "min": 1, "role": "style", "valType": "number" }, - "widthsrc": { - "description": "Sets the source reference on plot.ly for width .", + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", "editType": "none", "role": "info", "valType": "string" } }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on plot.ly for opacity .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "reversescale": { - "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "size": { + "namelength": { "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calcIfAutorange", - "min": 0, - "role": "style", - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", "editType": "none", - "role": "info", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "style", - "role": "style", - "valType": "enumerated", - "values": [ - 0, - "circle", - 100, - "circle-open", - 200, - "circle-dot", - 300, - "circle-open-dot", - 1, - "square", - 101, - "square-open", - 201, - "square-dot", - 301, - "square-open-dot", - 2, - "diamond", - 102, - "diamond-open", - 202, - "diamond-dot", - 302, - "diamond-open-dot", - 3, - "cross", - 103, - "cross-open", - 203, - "cross-dot", - 303, - "cross-open-dot", - 4, - "x", - 104, - "x-open", - 204, - "x-dot", - 304, - "x-open-dot", - 5, - "triangle-up", - 105, - "triangle-up-open", - 205, - "triangle-up-dot", - 305, - "triangle-up-open-dot", - 6, - "triangle-down", - 106, - "triangle-down-open", - 206, - "triangle-down-dot", - 306, - "triangle-down-open-dot", - 7, - "triangle-left", - 107, - "triangle-left-open", - 207, - "triangle-left-dot", - 307, - "triangle-left-open-dot", - 8, - "triangle-right", - 108, - "triangle-right-open", - 208, - "triangle-right-dot", - 308, - "triangle-right-open-dot", - 9, - "triangle-ne", - 109, - "triangle-ne-open", - 209, - "triangle-ne-dot", - 309, - "triangle-ne-open-dot", - 10, - "triangle-se", - 110, - "triangle-se-open", - 210, - "triangle-se-dot", - 310, - "triangle-se-open-dot", - 11, - "triangle-sw", - 111, - "triangle-sw-open", - 211, - "triangle-sw-dot", - 311, - "triangle-sw-open-dot", - 12, - "triangle-nw", - 112, - "triangle-nw-open", - 212, - "triangle-nw-dot", - 312, - "triangle-nw-open-dot", - 13, - "pentagon", - 113, - "pentagon-open", - 213, - "pentagon-dot", - 313, - "pentagon-open-dot", - 14, - "hexagon", - 114, - "hexagon-open", - 214, - "hexagon-dot", - 314, - "hexagon-open-dot", - 15, - "hexagon2", - 115, - "hexagon2-open", - 215, - "hexagon2-dot", - 315, - "hexagon2-open-dot", - 16, - "octagon", - 116, - "octagon-open", - 216, - "octagon-dot", - 316, - "octagon-open-dot", - 17, - "star", - 117, - "star-open", - 217, - "star-dot", - 317, - "star-open-dot", - 18, - "hexagram", - 118, - "hexagram-open", - 218, - "hexagram-dot", - 318, - "hexagram-open-dot", - 19, - "star-triangle-up", - 119, - "star-triangle-up-open", - 219, - "star-triangle-up-dot", - 319, - "star-triangle-up-open-dot", - 20, - "star-triangle-down", - 120, - "star-triangle-down-open", - 220, - "star-triangle-down-dot", - 320, - "star-triangle-down-open-dot", - 21, - "star-square", - 121, - "star-square-open", - 221, - "star-square-dot", - 321, - "star-square-open-dot", - 22, - "star-diamond", - 122, - "star-diamond-open", - 222, - "star-diamond-dot", - 322, - "star-diamond-open-dot", - 23, - "diamond-tall", - 123, - "diamond-tall-open", - 223, - "diamond-tall-dot", - 323, - "diamond-tall-open-dot", - 24, - "diamond-wide", - 124, - "diamond-wide-open", - 224, - "diamond-wide-dot", - 324, - "diamond-wide-open-dot", - 25, - "hourglass", - 125, - "hourglass-open", - 26, - "bowtie", - 126, - "bowtie-open", - 27, - "circle-cross", - 127, - "circle-cross-open", - 28, - "circle-x", - 128, - "circle-x-open", - 29, - "square-cross", - 129, - "square-cross-open", - 30, - "square-x", - 130, - "square-x-open", - 31, - "diamond-cross", - 131, - "diamond-cross-open", - 32, - "diamond-x", - 132, - "diamond-x-open", - 33, - "cross-thin", - 133, - "cross-thin-open", - 34, - "x-thin", - 134, - "x-thin-open", - 35, - "asterisk", - 135, - "asterisk-open", - 36, - "hash", - 136, - "hash-open", - 236, - "hash-dot", - 336, - "hash-open-dot", - 37, - "y-up", - 137, - "y-up-open", - 38, - "y-down", - 138, - "y-down-open", - 39, - "y-left", - 139, - "y-left-open", - 40, - "y-right", - 140, - "y-right-open", - 41, - "line-ew", - 141, - "line-ew-open", - 42, - "line-ns", - 142, - "line-ns-open", - 43, - "line-ne", - 143, - "line-ne-open", - 44, - "line-nw", - 144, - "line-nw-open" - ] + "min": -1, + "role": "style", + "valType": "integer" }, - "symbolsrc": { - "description": "Sets the source reference on plot.ly for symbol .", + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", "editType": "none", "role": "info", "valType": "string" - } + }, + "role": "object" }, - "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", - "editType": "calc", - "extras": [ - "none" - ], + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", "flags": [ - "lines", - "markers", - "text" + "points", + "fills" ], "role": "info", "valType": "flaglist" }, - "name": { - "description": "Sets the trace name. The trace name appear as the legend item and on hover.", - "editType": "style", - "role": "info", - "valType": "string" - }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "r": { - "description": "For polar chart only.Sets the radial coordinates.", + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", "role": "data", "valType": "data_array" }, - "rsrc": { - "description": "Sets the source reference on plot.ly for r .", + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", "editType": "none", "role": "info", "valType": "string" }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", "editType": "style", "role": "info", - "valType": "boolean" + "valType": "string" }, - "stream": { + "line": { + "color": { + "description": "Sets the line color.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "dash": { + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "dflt": "solid", + "editType": "style", + "role": "style", + "valType": "string", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, "editType": "calc", - "maxpoints": { - "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", - "dflt": 500, - "editType": "calc", - "max": 10000, + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "role": "style", + "valType": "number" + }, + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "style", "min": 0, + "role": "style", + "valType": "number" + } + }, + "marker": { + "autocolorscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `marker.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, "role": "info", "valType": "number" }, - "role": "object", - "token": { - "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "colorbars", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "colorbars", + "role": "info", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "integer" + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "colorbars", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "colorbars", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "colorbars", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "description": "Sets the color bar's tick label font", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "colorbars", + "items": [ + { + "editType": "colorbars", + "valType": "any" + }, + { + "editType": "colorbars", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "colorbars", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "colorbars", + "impliedEdits": {}, + "role": "info", + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "colorbars", + "role": "style", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "colorbars", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "title": { + "description": "Sets the title of the color bar.", + "editType": "colorbars", + "role": "info", + "valType": "string" + }, + "titlefont": { + "color": { + "editType": "colorbars", + "role": "style", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "colorbars", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "colorbars", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "colorbars", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "titleside": { + "description": "Determines the location of the colorbar title with respect to the color bar.", + "dflt": "top", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "x": { + "description": "Sets the x position of the color bar (in plot fraction).", + "dflt": 1.02, + "editType": "colorbars", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "dflt": "left", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, + "editType": "colorbars", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", + "editType": "colorbars", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "colorbars", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", - "noBlank": true, - "role": "info", - "strict": true, - "valType": "string" - } - }, - "t": { - "description": "For polar chart only.Sets the angular coordinates.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "text": { - "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", + "impliedEdits": { + "autocolorscale": false + }, "role": "style", - "valType": "color" + "valType": "colorscale" }, "colorsrc": { "description": "Sets the source reference on plot.ly for color .", @@ -26263,599 +30560,831 @@ "role": "info", "valType": "string" }, - "description": "Sets the text font.", "editType": "calc", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on plot.ly for textposition .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "tsrc": { - "description": "Sets the source reference on plot.ly for t .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "type": "scatter", - "uid": { - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - true, - false, - "legendonly" - ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "any" - }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "ysrc": { - "description": "Sets the source reference on plot.ly for y .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "meta": { - "description": "The scatter trace type encompasses line charts, scatter charts, text charts, and bubble charts. The data visualized as scatter point or lines is set in `x` and `y`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays." - } - }, - "scatter3d": { - "attributes": { - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "error_x": { - "_deprecated": { - "opacity": { - "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", "editType": "calc", "role": "style", - "valType": "number" + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on plot.ly for type .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on plot.ly for arrayminus .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on plot.ly for array .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "color": { - "description": "Sets the stoke color of the error bars.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "copy_zstyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "line": { + "autocolorscale": { + "description": "Has an effect only if `color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `color` array index, and if set, `cmin` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `color` array index, and if set, `cmax` must be set as well.", + "dflt": null, + "editType": "plot", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - } - }, - "error_y": { - "_deprecated": { - "opacity": { - "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "reversescale": { + "description": "Has an effect only if `color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, "editType": "calc", "role": "style", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "style", + "min": 0, + "role": "style", "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" }, - "arrayminussrc": { - "description": "Sets the source reference on plot.ly for arrayminus .", - "editType": "none", - "role": "info", - "valType": "string" + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" }, - "arraysrc": { - "description": "Sets the source reference on plot.ly for array .", + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", "editType": "none", "role": "info", "valType": "string" }, - "color": { - "description": "Sets the stoke color of the error bars.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "copy_zstyle": { + "reversescale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, "editType": "calc", "role": "style", "valType": "boolean" }, - "editType": "calc", "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "showscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, "editType": "calc", "role": "info", "valType": "boolean" }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calcIfAutorange", "min": 0, "role": "style", "valType": "number" }, - "traceref": { + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", "dflt": 0, "editType": "calc", "min": 0, - "role": "info", - "valType": "integer" + "role": "style", + "valType": "number" }, - "tracerefminus": { - "dflt": 0, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", "editType": "calc", - "min": 0, "role": "info", - "valType": "integer" + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, "editType": "calc", + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", "role": "info", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "style", + "role": "style", "valType": "enumerated", "values": [ - "percent", - "constant", - "sqrt", - "data" + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" ] }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, + "symbolsrc": { + "description": "Sets the source reference on plot.ly for symbol .", + "editType": "none", "role": "info", - "valType": "number" + "valType": "string" + } + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "role": "info", + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, "editType": "calc", + "max": 10000, "min": 0, "role": "info", "valType": "number" }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", "editType": "calc", + "noBlank": true, "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" + "strict": true, + "valType": "string" } }, - "error_z": { - "_deprecated": { - "opacity": { - "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", - "editType": "calc", - "role": "style", - "valType": "number" - } - }, - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on plot.ly for arrayminus .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on plot.ly for array .", - "editType": "none", - "role": "info", - "valType": "string" - }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c).", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textfont": { "color": { - "description": "Sets the stoke color of the error bars.", - "editType": "calc", + "arrayOk": true, + "editType": "style", "role": "style", "valType": "color" }, - "copy_ystyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "copy_zstyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", "role": "info", - "valType": "boolean" + "valType": "string" }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, + "description": "Sets the text font.", + "editType": "calc", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", - "min": 0, + "noBlank": true, "role": "style", - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] + "strict": true, + "valType": "string" }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", "role": "info", - "valType": "number" + "valType": "string" }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, + "role": "object", + "size": { + "arrayOk": true, "editType": "calc", - "min": 0, - "role": "info", + "min": 1, + "role": "style", "valType": "number" }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", "role": "info", - "valType": "boolean" + "valType": "string" + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "textpositionsrc": { + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "scattercarpet", + "uid": { + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" } }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + } + }, + "meta": { + "description": "Plots a scatter trace on either the first carpet axis or the carpet axis with a matching `carpet` attribute.", + "hrName": "scatter_carpet" + } + }, + "scattergeo": { + "attributes": { + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "dflt": "none", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "toself" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "geo": { + "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", + "dflt": "geo", + "editType": "calc", + "role": "info", + "valType": "subplotid" + }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", "dflt": "all", - "editType": "none", + "editType": "calc", "extras": [ "all", "none", "skip" ], "flags": [ - "x", - "y", - "z", + "lon", + "lat", + "location", "text", "name" ], @@ -26959,7 +31488,7 @@ }, "hovertext": { "arrayOk": true, - "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "description": "Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", "dflt": "", "editType": "calc", "role": "info", @@ -26983,6 +31512,18 @@ "role": "info", "valType": "string" }, + "lat": { + "description": "Sets the latitude coordinates (in degrees North).", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "latsrc": { + "description": "Sets the source reference on plot.ly for lat .", + "editType": "none", + "role": "info", + "valType": "string" + }, "legendgroup": { "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", "dflt": "", @@ -26991,70 +31532,18 @@ "valType": "string" }, "line": { - "autocolorscale": { - "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "style", - "valType": "boolean" - }, - "cauto": { - "description": "Has an effect only if `line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "info", - "valType": "boolean" - }, - "cmax": { - "description": "Has an effect only if `line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, - "cmin": { - "description": "Has an effect only if `line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `line.color` array index, and if set, `line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, "color": { - "arrayOk": true, - "description": "Sets the line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "description": "Sets the line color.", "editType": "calc", "role": "style", "valType": "color" }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `line.cmin` and `line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "role": "style", - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, "dash": { - "description": "Sets the dash style of the lines.", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", "dflt": "solid", "editType": "calc", "role": "style", - "valType": "enumerated", + "valType": "string", "values": [ "solid", "dot", @@ -27065,21 +31554,7 @@ ] }, "editType": "calc", - "reversescale": { - "description": "Has an effect only if `line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, "role": "object", - "showscale": { - "description": "Has an effect only if `line.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, "width": { "description": "Sets the line width (in px).", "dflt": 2, @@ -27089,6 +31564,42 @@ "valType": "number" } }, + "locationmode": { + "description": "Determines the set of locations used to match entries in `locations` to regions on the map.", + "dflt": "ISO-3", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "ISO-3", + "USA-states", + "country names" + ] + }, + "locations": { + "description": "Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "locationssrc": { + "description": "Sets the source reference on plot.ly for locations .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "lon": { + "description": "Sets the longitude coordinates (in degrees East).", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "lonsrc": { + "description": "Sets the source reference on plot.ly for lon .", + "editType": "none", + "role": "info", + "valType": "string" + }, "marker": { "autocolorscale": { "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", @@ -27462,7 +31973,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "calc", "role": "info", "valType": "string" @@ -27563,7 +32073,7 @@ } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -27578,6 +32088,43 @@ "valType": "string" }, "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on plot.ly for type .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, "line": { "autocolorscale": { "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", @@ -27623,7 +32170,7 @@ "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -27647,23 +32194,35 @@ }, "role": "object", "width": { - "arrayOk": false, + "arrayOk": true, "description": "Sets the width (in px) of the lines bounding the marker points.", "editType": "calc", "min": 0, "role": "style", "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" } }, "opacity": { - "arrayOk": false, - "description": "Sets the marker opacity. Note that the marker opacity for scatter3d traces must be a scalar value for performance reasons. To set a blending opacity value (i.e. which is not transparent), set *marker.color* to an rgba color and use its alpha channel.", + "arrayOk": true, + "description": "Sets the marker opacity.", "editType": "calc", "max": 1, "min": 0, "role": "style", "valType": "number" }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none", + "role": "info", + "valType": "string" + }, "reversescale": { "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", "dflt": false, @@ -27682,7 +32241,7 @@ "size": { "arrayOk": true, "description": "Sets the marker size (in px).", - "dflt": 8, + "dflt": 6, "editType": "calc", "min": 0, "role": "style", @@ -27722,20 +32281,296 @@ }, "symbol": { "arrayOk": true, - "description": "Sets the marker symbol type.", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", "dflt": "circle", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ + 0, "circle", + 100, "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, "square", + 101, "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, "diamond", + 102, "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, "cross", - "x" + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" ] }, "symbolsrc": { @@ -27747,7 +32582,7 @@ }, "mode": { "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "lines+markers", + "dflt": "markers", "editType": "calc", "extras": [ "none" @@ -27775,43 +32610,18 @@ "role": "style", "valType": "number" }, - "projection": { + "selected": { "editType": "calc", - "role": "object", - "x": { - "editType": "calc", - "opacity": { - "description": "Sets the projection color.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, + "marker": { + "color": { + "description": "Sets the marker color of selected points.", "editType": "calc", - "max": 10, - "min": 0, "role": "style", - "valType": "number" + "valType": "color" }, - "show": { - "description": "Sets whether or not projections are shown along the x axis.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - } - }, - "y": { "editType": "calc", "opacity": { - "description": "Sets the projection color.", - "dflt": 1, + "description": "Sets the marker opacity of selected points.", "editType": "calc", "max": 1, "min": 0, @@ -27819,59 +32629,31 @@ "valType": "number" }, "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, + "size": { + "description": "Sets the marker size of selected points.", "editType": "calc", - "max": 10, "min": 0, "role": "style", "valType": "number" - }, - "show": { - "description": "Sets whether or not projections are shown along the y axis.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" } }, - "z": { - "editType": "calc", - "opacity": { - "description": "Sets the projection color.", - "dflt": 1, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "role": "object", - "scale": { - "description": "Sets the scale factor determining the size of the projection marker points.", - "dflt": 0.6666666666666666, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", "editType": "calc", - "max": 10, - "min": 0, "role": "style", - "valType": "number" + "valType": "color" }, - "show": { - "description": "Sets whether or not projections are shown along the z axis.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - } + "editType": "calc", + "role": "object" } }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", "role": "info", - "valType": "subplotid" + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -27901,28 +32683,9 @@ "valType": "string" } }, - "surfaceaxis": { - "description": "If *-1*, the scatter points are not fill with a surface If *0*, *1*, *2*, the scatter points are filled with a Delaunay surface about the x, y, z respectively.", - "dflt": -1, - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - -1, - 0, - 1, - 2 - ] - }, - "surfacecolor": { - "description": "Sets the surface fill color.", - "editType": "calc", - "role": "style", - "valType": "color" - }, "text": { "arrayOk": true, - "description": "Sets text elements associated with each (x,y,z) triplet. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y,z) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "description": "Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", "dflt": "", "editType": "calc", "role": "info", @@ -27976,7 +32739,7 @@ "textposition": { "arrayOk": true, "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "top center", + "dflt": "middle center", "editType": "calc", "role": "style", "valType": "enumerated", @@ -28004,13 +32767,52 @@ "role": "info", "valType": "string" }, - "type": "scatter3d", + "type": "scattergeo", "uid": { "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -28022,190 +32824,309 @@ false, "legendonly" ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "ysrc": { - "description": "Sets the source reference on plot.ly for y .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "z": { - "description": "Sets the z coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "zcalendar": { - "description": "Sets the calendar system to use with `z` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "zsrc": { - "description": "Sets the source reference on plot.ly for z .", - "editType": "none", - "role": "info", - "valType": "string" } }, "meta": { - "description": "The data visualized as scatter point or lines in 3D dimension is set in `x`, `y`, `z`. Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` Projections are achieved via `projection`. Surface fills are achieved via `surfaceaxis`.", - "hrName": "scatter_3d" + "description": "The data visualized as scatter point or lines on a geographic map is provided either by longitude/latitude pairs in `lon` and `lat` respectively or by geographic location IDs or names in `locations`.", + "hrName": "scatter_geo" } }, - "scattercarpet": { + "scattergl": { "attributes": { - "a": { - "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "asrc": { - "description": "Sets the source reference on plot.ly for a .", - "editType": "none", "role": "info", - "valType": "string" + "valType": "boolean" }, - "b": { - "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", "editType": "calc", "role": "data", "valType": "data_array" }, - "bsrc": { - "description": "Sets the source reference on plot.ly for b .", + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", "editType": "none", "role": "info", "valType": "string" }, - "carpet": { - "description": "An identifier for this carpet, so that `scattercarpet` and `scattercontour` traces can specify a carpet plot on which they lie", + "dx": { + "description": "Sets the x coordinate step. See `x0` for more info.", + "dflt": 1, "editType": "calc", "role": "info", - "valType": "string" + "valType": "number" }, - "connectgaps": { - "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", - "dflt": false, + "dy": { + "description": "Sets the y coordinate step. See `y0` for more info.", + "dflt": 1, "editType": "calc", "role": "info", - "valType": "boolean" + "valType": "number" }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "error_x": { + "_deprecated": { + "opacity": { + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "editType": "calc", + "role": "style", + "valType": "number" + } + }, + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on plot.ly for array .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "color": { + "description": "Sets the stoke color of the error bars.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "copy_zstyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, "editType": "calc", - "role": "data", - "valType": "data_array" + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" + "error_y": { + "_deprecated": { + "opacity": { + "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", + "editType": "calc", + "role": "style", + "valType": "number" + } + }, + "array": { + "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminus": { + "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "arrayminussrc": { + "description": "Sets the source reference on plot.ly for arrayminus .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "arraysrc": { + "description": "Sets the source reference on plot.ly for array .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "color": { + "description": "Sets the stoke color of the error bars.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "copy_ystyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "copy_zstyle": { + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "editType": "calc", + "role": "object", + "symmetric": { + "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "thickness": { + "description": "Sets the thickness (in px) of the error bars.", + "dflt": 2, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "traceref": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "tracerefminus": { + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "integer" + }, + "type": { + "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "percent", + "constant", + "sqrt", + "data" + ] + }, + "value": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "valueminus": { + "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "info", + "valType": "number" + }, + "visible": { + "description": "Determines whether or not this set of error bars is visible.", + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } }, "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", "dflt": "none", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ "none", + "tozeroy", + "tozerox", + "tonexty", + "tonextx", "toself", "tonext" ] }, "fillcolor": { "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, @@ -28220,10 +33141,10 @@ "skip" ], "flags": [ - "a", - "b", + "x", + "y", + "z", "text", - "name", "name" ], "role": "info", @@ -28326,7 +33247,7 @@ }, "hoveron": { "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", - "editType": "style", + "editType": "calc", "flags": [ "points", "fills" @@ -28356,16 +33277,16 @@ "line": { "color": { "description": "Sets the line color.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", + "description": "Sets the style of the lines.", "dflt": "solid", - "editType": "style", + "editType": "calc", "role": "style", - "valType": "string", + "valType": "enumerated", "values": [ "solid", "dot", @@ -28377,30 +33298,10 @@ }, "editType": "calc", "role": "object", - "shape": { - "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", - "dflt": "linear", - "editType": "plot", - "role": "style", - "valType": "enumerated", - "values": [ - "linear", - "spline" - ] - }, - "smoothing": { - "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", - "dflt": 1, - "editType": "plot", - "max": 1.3, - "min": 0, - "role": "style", - "valType": "number" - }, "width": { "description": "Sets the line width (in px).", "dflt": 2, - "editType": "style", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -28426,7 +33327,7 @@ "cmax": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmin` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -28436,7 +33337,7 @@ "cmin": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmax` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -28446,7 +33347,7 @@ "color": { "arrayOk": true, "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "style", + "editType": "calc", "role": "style", "valType": "color" }, @@ -28454,39 +33355,39 @@ "bgcolor": { "description": "Sets the color of padded area.", "dflt": "rgba(0,0,0,0)", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "bordercolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "borderwidth": { "description": "Sets the width (in px) or the border enclosing this color bar.", "dflt": 0, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "dtick": { "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "colorbars", + "editType": "calc", "impliedEdits": { "tickmode": "linear" }, "role": "style", "valType": "any" }, - "editType": "colorbars", + "editType": "calc", "exponentformat": { "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", "dflt": "B", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28501,7 +33402,7 @@ "len": { "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", "dflt": 1, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -28509,7 +33410,7 @@ "lenmode": { "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", "dflt": "fraction", - "editType": "colorbars", + "editType": "calc", "role": "info", "valType": "enumerated", "values": [ @@ -28520,7 +33421,7 @@ "nticks": { "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", "dflt": 0, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "integer" @@ -28528,14 +33429,14 @@ "outlinecolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "outlinewidth": { "description": "Sets the width (in px) of the axis line.", "dflt": 1, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -28544,14 +33445,14 @@ "separatethousands": { "description": "If \"true\", even 4-digit integers are separated", "dflt": false, - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "boolean" }, "showexponent": { "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28564,14 +33465,14 @@ "showticklabels": { "description": "Determines whether or not the tick labels are drawn.", "dflt": true, - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "boolean" }, "showtickprefix": { "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28584,7 +33485,7 @@ "showticksuffix": { "description": "Same as `showtickprefix` but for tick suffixes.", "dflt": "all", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28597,7 +33498,7 @@ "thickness": { "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", "dflt": 30, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -28605,7 +33506,7 @@ "thicknessmode": { "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", "dflt": "pixels", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28615,7 +33516,7 @@ }, "tick0": { "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "colorbars", + "editType": "calc", "impliedEdits": { "tickmode": "linear" }, @@ -28625,28 +33526,28 @@ "tickangle": { "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", "dflt": "auto", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "angle" }, "tickcolor": { "description": "Sets the tick color.", "dflt": "#444", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "tickfont": { "color": { - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "description": "Sets the color bar's tick label font", - "editType": "colorbars", + "editType": "calc", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", + "editType": "calc", "noBlank": true, "role": "style", "strict": true, @@ -28654,7 +33555,7 @@ }, "role": "object", "size": { - "editType": "colorbars", + "editType": "calc", "min": 1, "role": "style", "valType": "number" @@ -28663,7 +33564,7 @@ "tickformat": { "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, @@ -28672,26 +33573,26 @@ "tickformatstop": { "dtickrange": { "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "colorbars", + "editType": "calc", "items": [ { - "editType": "colorbars", + "editType": "calc", "valType": "any" }, { - "editType": "colorbars", + "editType": "calc", "valType": "any" } ], "role": "info", "valType": "info_array" }, - "editType": "colorbars", + "editType": "calc", "role": "object", "value": { "description": "string - dtickformat for described zoom level, the same as *tickformat*", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" } @@ -28702,14 +33603,14 @@ "ticklen": { "description": "Sets the tick length (in px).", "dflt": 5, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "tickmode": { "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "colorbars", + "editType": "calc", "impliedEdits": {}, "role": "info", "valType": "enumerated", @@ -28722,14 +33623,14 @@ "tickprefix": { "description": "Sets a tick label prefix.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, "ticks": { "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28741,13 +33642,13 @@ "ticksuffix": { "description": "Sets a tick label suffix.", "dflt": "", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "string" }, "ticktext": { "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "colorbars", + "editType": "calc", "role": "data", "valType": "data_array" }, @@ -28759,7 +33660,7 @@ }, "tickvals": { "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "colorbars", + "editType": "calc", "role": "data", "valType": "data_array" }, @@ -28772,29 +33673,28 @@ "tickwidth": { "description": "Sets the tick width (in px).", "dflt": 1, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", - "editType": "colorbars", + "editType": "calc", "role": "info", "valType": "string" }, "titlefont": { "color": { - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "color" }, "description": "Sets this color bar's title font.", - "editType": "colorbars", + "editType": "calc", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "colorbars", + "editType": "calc", "noBlank": true, "role": "style", "strict": true, @@ -28802,7 +33702,7 @@ }, "role": "object", "size": { - "editType": "colorbars", + "editType": "calc", "min": 1, "role": "style", "valType": "number" @@ -28811,7 +33711,7 @@ "titleside": { "description": "Determines the location of the colorbar title with respect to the color bar.", "dflt": "top", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28823,7 +33723,7 @@ "x": { "description": "Sets the x position of the color bar (in plot fraction).", "dflt": 1.02, - "editType": "colorbars", + "editType": "calc", "max": 3, "min": -2, "role": "style", @@ -28832,7 +33732,7 @@ "xanchor": { "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", "dflt": "left", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28844,7 +33744,7 @@ "xpad": { "description": "Sets the amount of padding (in px) along the x direction.", "dflt": 10, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -28852,7 +33752,7 @@ "y": { "description": "Sets the y position of the color bar (in plot fraction).", "dflt": 0.5, - "editType": "colorbars", + "editType": "calc", "max": 3, "min": -2, "role": "style", @@ -28861,7 +33761,7 @@ "yanchor": { "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", "dflt": "middle", - "editType": "colorbars", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -28873,14 +33773,14 @@ "ypad": { "description": "Sets the amount of padding (in px) along the y direction.", "dflt": 10, - "editType": "colorbars", + "editType": "calc", "min": 0, "role": "style", "valType": "number" } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -28895,46 +33795,9 @@ "valType": "string" }, "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on plot.ly for type .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, "line": { "autocolorscale": { - "description": "Has an effect only if `color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", "dflt": true, "editType": "calc", "impliedEdits": {}, @@ -28942,7 +33805,7 @@ "valType": "boolean" }, "cauto": { - "description": "Has an effect only if `color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", "dflt": true, "editType": "calc", "impliedEdits": {}, @@ -28950,9 +33813,9 @@ "valType": "boolean" }, "cmax": { - "description": "Has an effect only if `color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `color` array index, and if set, `cmin` must be set as well.", + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -28960,9 +33823,9 @@ "valType": "number" }, "cmin": { - "description": "Has an effect only if `color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `color` array index, and if set, `cmax` must be set as well.", + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", "dflt": null, - "editType": "plot", + "editType": "calc", "impliedEdits": { "cauto": false }, @@ -28971,13 +33834,13 @@ }, "color": { "arrayOk": true, - "description": "Sets the color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "style", + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "calc", "role": "style", "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `cmin` and `cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -28993,7 +33856,7 @@ }, "editType": "calc", "reversescale": { - "description": "Has an effect only if `color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", "dflt": false, "editType": "calc", "role": "style", @@ -29003,7 +33866,7 @@ "width": { "arrayOk": true, "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "style", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -29015,18 +33878,10 @@ "valType": "string" } }, - "maxdisplayed": { - "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", - "dflt": 0, - "editType": "plot", - "min": 0, - "role": "style", - "valType": "number" - }, "opacity": { "arrayOk": true, "description": "Sets the marker opacity.", - "editType": "style", + "editType": "calc", "max": 1, "min": 0, "role": "style", @@ -29057,7 +33912,7 @@ "arrayOk": true, "description": "Sets the marker size (in px).", "dflt": 6, - "editType": "calcIfAutorange", + "editType": "calc", "min": 0, "role": "style", "valType": "number" @@ -29098,7 +33953,7 @@ "arrayOk": true, "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", "dflt": "circle", - "editType": "style", + "editType": "calc", "role": "style", "valType": "enumerated", "values": [ @@ -29396,16 +34251,14 @@ } }, "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", - "dflt": "markers", + "description": "Determines the drawing mode for this scatter trace.", "editType": "calc", "extras": [ "none" ], "flags": [ "lines", - "markers", - "text" + "markers" ], "role": "info", "valType": "flaglist" @@ -29419,12 +34272,47 @@ "opacity": { "description": "Sets the opacity of the trace.", "dflt": 1, - "editType": "style", + "editType": "calc", "max": 1, "min": 0, "role": "style", "valType": "number" }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -29455,95 +34343,54 @@ }, "text": { "arrayOk": true, - "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the the data points in (a,b,c).", + "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates.", "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, - "textfont": { - "color": { - "arrayOk": true, - "editType": "style", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "description": "Sets the text font.", - "editType": "calc", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "textposition": { - "arrayOk": true, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, - "textpositionsrc": { - "description": "Sets the source reference on plot.ly for textposition .", - "editType": "none", - "role": "info", - "valType": "string" - }, "textsrc": { "description": "Sets the source reference on plot.ly for text .", "editType": "none", "role": "info", "valType": "string" }, - "type": "scattercarpet", + "type": "scattergl", "uid": { "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -29556,6 +34403,19 @@ "legendonly" ] }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "x0": { + "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, "xaxis": { "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", "dflt": "x", @@ -29563,20 +34423,95 @@ "role": "info", "valType": "subplotid" }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "y0": { + "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", + "dflt": 0, + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, "yaxis": { "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", "dflt": "y", "editType": "calc+clearAxisTypes", "role": "info", "valType": "subplotid" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" } }, "meta": { - "description": "Plots a scatter trace on either the first carpet axis or the carpet axis with a matching `carpet` attribute.", - "hrName": "scatter_carpet" + "description": "The data visualized as scatter point or lines is set in `x` and `y` using the WebGL plotting engine. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to a numerical arrays.", + "hrName": "scatter_gl" } }, - "scattergeo": { + "scattermapbox": { "attributes": { "connectgaps": { "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", @@ -29614,13 +34549,6 @@ "role": "style", "valType": "color" }, - "geo": { - "description": "Sets a reference between this trace's geospatial coordinates and a geographic map. If *geo* (the default value), the geospatial coordinates refer to `layout.geo`. If *geo2*, the geospatial coordinates refer to `layout.geo2`, and so on.", - "dflt": "geo", - "editType": "calc", - "role": "info", - "valType": "subplotid" - }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", @@ -29634,8 +34562,8 @@ "flags": [ "lon", "lat", - "location", "text", + "name", "name" ], "role": "info", @@ -29738,7 +34666,7 @@ }, "hovertext": { "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", "dflt": "", "editType": "calc", "role": "info", @@ -29788,21 +34716,6 @@ "role": "style", "valType": "color" }, - "dash": { - "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", - "dflt": "solid", - "editType": "calc", - "role": "style", - "valType": "string", - "values": [ - "solid", - "dot", - "dash", - "longdash", - "dashdot", - "longdashdot" - ] - }, "editType": "calc", "role": "object", "width": { @@ -29811,32 +34724,8 @@ "editType": "calc", "min": 0, "role": "style", - "valType": "number" - } - }, - "locationmode": { - "description": "Determines the set of locations used to match entries in `locations` to regions on the map.", - "dflt": "ISO-3", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "ISO-3", - "USA-states", - "country names" - ] - }, - "locations": { - "description": "Sets the coordinates via location IDs or names. Coordinates correspond to the centroid of each location given. See `locationmode` for more info.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "locationssrc": { - "description": "Sets the source reference on plot.ly for locations .", - "editType": "none", - "role": "info", - "valType": "string" + "valType": "number" + } }, "lon": { "description": "Sets the longitude coordinates (in degrees East).", @@ -30223,7 +35112,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "calc", "role": "info", "valType": "string" @@ -30310,520 +35198,114 @@ "valType": "enumerated", "values": [ "top", - "middle", - "bottom" - ] - }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - } - }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "role": "style", - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "gradient": { - "color": { - "arrayOk": true, - "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "type": { - "arrayOk": true, - "description": "Sets the type of gradient used to fill the markers", - "dflt": "none", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "radial", - "horizontal", - "vertical", - "none" - ] - }, - "typesrc": { - "description": "Sets the source reference on plot.ly for type .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "line": { - "autocolorscale": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "style", - "valType": "boolean" - }, - "cauto": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", - "dflt": true, - "editType": "calc", - "impliedEdits": {}, - "role": "info", - "valType": "boolean" - }, - "cmax": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, - "cmin": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", - "dflt": null, - "editType": "calc", - "impliedEdits": { - "cauto": false - }, - "role": "info", - "valType": "number" - }, - "color": { - "arrayOk": true, - "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, - "role": "style", - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "reversescale": { - "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "role": "object", - "width": { - "arrayOk": true, - "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on plot.ly for width .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "opacity": { - "arrayOk": true, - "description": "Sets the marker opacity.", - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "opacitysrc": { - "description": "Sets the source reference on plot.ly for opacity .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "reversescale": { - "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", - "dflt": false, - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "role": "object", - "showscale": { - "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "size": { - "arrayOk": true, - "description": "Sets the marker size (in px).", - "dflt": 6, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "sizemin": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "sizemode": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", - "dflt": "diameter", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "diameter", - "area" - ] - }, - "sizeref": { - "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", - "dflt": 1, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "symbol": { - "arrayOk": true, - "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", - "dflt": "circle", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - 0, - "circle", - 100, - "circle-open", - 200, - "circle-dot", - 300, - "circle-open-dot", - 1, - "square", - 101, - "square-open", - 201, - "square-dot", - 301, - "square-open-dot", - 2, - "diamond", - 102, - "diamond-open", - 202, - "diamond-dot", - 302, - "diamond-open-dot", - 3, - "cross", - 103, - "cross-open", - 203, - "cross-dot", - 303, - "cross-open-dot", - 4, - "x", - 104, - "x-open", - 204, - "x-dot", - 304, - "x-open-dot", - 5, - "triangle-up", - 105, - "triangle-up-open", - 205, - "triangle-up-dot", - 305, - "triangle-up-open-dot", - 6, - "triangle-down", - 106, - "triangle-down-open", - 206, - "triangle-down-dot", - 306, - "triangle-down-open-dot", - 7, - "triangle-left", - 107, - "triangle-left-open", - 207, - "triangle-left-dot", - 307, - "triangle-left-open-dot", - 8, - "triangle-right", - 108, - "triangle-right-open", - 208, - "triangle-right-dot", - 308, - "triangle-right-open-dot", - 9, - "triangle-ne", - 109, - "triangle-ne-open", - 209, - "triangle-ne-dot", - 309, - "triangle-ne-open-dot", - 10, - "triangle-se", - 110, - "triangle-se-open", - 210, - "triangle-se-dot", - 310, - "triangle-se-open-dot", - 11, - "triangle-sw", - 111, - "triangle-sw-open", - 211, - "triangle-sw-dot", - 311, - "triangle-sw-open-dot", - 12, - "triangle-nw", - 112, - "triangle-nw-open", - 212, - "triangle-nw-dot", - 312, - "triangle-nw-open-dot", - 13, - "pentagon", - 113, - "pentagon-open", - 213, - "pentagon-dot", - 313, - "pentagon-open-dot", - 14, - "hexagon", - 114, - "hexagon-open", - 214, - "hexagon-dot", - 314, - "hexagon-open-dot", - 15, - "hexagon2", - 115, - "hexagon2-open", - 215, - "hexagon2-dot", - 315, - "hexagon2-open-dot", - 16, - "octagon", - 116, - "octagon-open", - 216, - "octagon-dot", - 316, - "octagon-open-dot", - 17, - "star", - 117, - "star-open", - 217, - "star-dot", - 317, - "star-open-dot", - 18, - "hexagram", - 118, - "hexagram-open", - 218, - "hexagram-dot", - 318, - "hexagram-open-dot", - 19, - "star-triangle-up", - 119, - "star-triangle-up-open", - 219, - "star-triangle-up-dot", - 319, - "star-triangle-up-open-dot", - 20, - "star-triangle-down", - 120, - "star-triangle-down-open", - 220, - "star-triangle-down-dot", - 320, - "star-triangle-down-open-dot", - 21, - "star-square", - 121, - "star-square-open", - 221, - "star-square-dot", - 321, - "star-square-open-dot", - 22, - "star-diamond", - 122, - "star-diamond-open", - 222, - "star-diamond-dot", - 322, - "star-diamond-open-dot", - 23, - "diamond-tall", - 123, - "diamond-tall-open", - 223, - "diamond-tall-dot", - 323, - "diamond-tall-open-dot", - 24, - "diamond-wide", - 124, - "diamond-wide-open", - 224, - "diamond-wide-dot", - 324, - "diamond-wide-open-dot", - 25, - "hourglass", - 125, - "hourglass-open", - 26, - "bowtie", - 126, - "bowtie-open", - 27, - "circle-cross", - 127, - "circle-cross-open", - 28, - "circle-x", - 128, - "circle-x-open", - 29, - "square-cross", - 129, - "square-cross-open", - 30, - "square-x", - 130, - "square-x-open", - 31, - "diamond-cross", - 131, - "diamond-cross-open", - 32, - "diamond-x", - 132, - "diamond-x-open", - 33, - "cross-thin", - 133, - "cross-thin-open", - 34, - "x-thin", - 134, - "x-thin-open", - 35, - "asterisk", - 135, - "asterisk-open", - 36, - "hash", - 136, - "hash-open", - 236, - "hash-dot", - 336, - "hash-open-dot", - 37, - "y-up", - 137, - "y-up-open", - 38, - "y-down", - 138, - "y-down-open", - 39, - "y-left", - 139, - "y-left-open", - 40, - "y-right", - 140, - "y-right-open", - 41, - "line-ew", - 141, - "line-ew-open", - 42, - "line-ns", - 142, - "line-ns-open", - 43, - "line-ne", - 143, - "line-ne-open", - 44, - "line-nw", - 144, - "line-nw-open" + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "opacitysrc": { + "description": "Sets the source reference on plot.ly for opacity .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "reversescale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether or not a colorbar is displayed.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "diameter", + "area" ] }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", + "dflt": "circle", + "editType": "calc", + "role": "style", + "valType": "string" + }, "symbolsrc": { "description": "Sets the source reference on plot.ly for symbol .", "editType": "none", @@ -30832,7 +35314,7 @@ } }, "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", "dflt": "markers", "editType": "calc", "extras": [ @@ -30861,6 +35343,28 @@ "role": "style", "valType": "number" }, + "selected": { + "editType": "calc", + "marker": { + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -30889,9 +35393,16 @@ "valType": "string" } }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", + "dflt": "mapbox", + "editType": "calc", + "role": "info", + "valType": "subplotid" + }, "text": { "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair or item in `locations`. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) or `locations` coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", "dflt": "", "editType": "calc", "role": "info", @@ -30899,51 +35410,31 @@ }, "textfont": { "color": { - "arrayOk": true, "editType": "calc", "role": "style", "valType": "color" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "description": "Sets the text font.", + "description": "Sets the icon text font. Has an effect only when `type` is set to *symbol*.", "editType": "calc", "family": { - "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "dflt": "Open Sans Regular, Arial Unicode MS Regular", "editType": "calc", "noBlank": true, "role": "style", "strict": true, "valType": "string" }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", - "editType": "none", - "role": "info", - "valType": "string" - }, "role": "object", "size": { - "arrayOk": true, "editType": "calc", "min": 1, "role": "style", "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" } }, "textposition": { - "arrayOk": true, + "arrayOk": false, "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", "dflt": "middle center", "editType": "calc", @@ -30961,25 +35452,35 @@ "bottom right" ] }, - "textpositionsrc": { - "description": "Sets the source reference on plot.ly for textposition .", - "editType": "none", - "role": "info", - "valType": "string" - }, "textsrc": { "description": "Sets the source reference on plot.ly for text .", "editType": "none", "role": "info", "valType": "string" }, - "type": "scattergeo", + "type": "scattermapbox", "uid": { "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, + "unselected": { + "editType": "calc", + "marker": { + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object" + }, + "role": "object" + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -30994,12 +35495,19 @@ } }, "meta": { - "description": "The data visualized as scatter point or lines on a geographic map is provided either by longitude/latitude pairs in `lon` and `lat` respectively or by geographic location IDs or names in `locations`.", - "hrName": "scatter_geo" + "description": "The data visualized as scatter point, lines or marker symbols on a Mapbox GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", + "hrName": "scatter_mapbox" } }, - "scattergl": { + "scatterpolar": { "attributes": { + "cliponaxis": { + "description": "Determines whether or not markers and text nodes are clipped about the subplot axes. To show markers and text nodes above axis lines and tick labels, make sure to set `xaxis.layer` and `yaxis.layer` to *below traces*.", + "dflt": false, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, "connectgaps": { "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", "dflt": false, @@ -31019,277 +35527,21 @@ "role": "info", "valType": "string" }, - "dx": { - "description": "Sets the x coordinate step. See `x0` for more info.", - "dflt": 1, - "editType": "calc", - "role": "info", - "valType": "number" - }, - "dy": { - "description": "Sets the y coordinate step. See `y0` for more info.", - "dflt": 1, - "editType": "calc", - "role": "info", - "valType": "number" - }, - "error_x": { - "_deprecated": { - "opacity": { - "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", - "editType": "calc", - "role": "style", - "valType": "number" - } - }, - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on plot.ly for arrayminus .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on plot.ly for array .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "color": { - "description": "Sets the stoke color of the error bars.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "copy_zstyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - } - }, - "error_y": { - "_deprecated": { - "opacity": { - "description": "Obsolete. Use the alpha channel in error bar `color` to set the opacity.", - "editType": "calc", - "role": "style", - "valType": "number" - } - }, - "array": { - "description": "Sets the data corresponding the length of each error bar. Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminus": { - "description": "Sets the data corresponding the length of each error bar in the bottom (left) direction for vertical (horizontal) bars Values are plotted relative to the underlying data.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "arrayminussrc": { - "description": "Sets the source reference on plot.ly for arrayminus .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "arraysrc": { - "description": "Sets the source reference on plot.ly for array .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "color": { - "description": "Sets the stoke color of the error bars.", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "copy_ystyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "copy_zstyle": { - "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "editType": "calc", - "role": "object", - "symmetric": { - "description": "Determines whether or not the error bars have the same length in both direction (top/bottom for vertical bars, left/right for horizontal bars.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "thickness": { - "description": "Sets the thickness (in px) of the error bars.", - "dflt": 2, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "traceref": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "tracerefminus": { - "dflt": 0, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "integer" - }, - "type": { - "description": "Determines the rule used to generate the error bars. If *constant`, the bar lengths are of a constant value. Set this constant in `value`. If *percent*, the bar lengths correspond to a percentage of underlying data. Set this percentage in `value`. If *sqrt*, the bar lengths correspond to the sqaure of the underlying data. If *array*, the bar lengths are set with data set `array`.", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "percent", - "constant", - "sqrt", - "data" - ] - }, - "value": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars.", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "valueminus": { - "description": "Sets the value of either the percentage (if `type` is set to *percent*) or the constant (if `type` is set to *constant*) corresponding to the lengths of the error bars in the bottom (left) direction for vertical (horizontal) bars", - "dflt": 10, - "editType": "calc", - "min": 0, - "role": "info", - "valType": "number" - }, - "visible": { - "description": "Determines whether or not this set of error bars is visible.", - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets the width (in px) of the cross-bar at both ends of the error bars.", - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - } - }, "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterpolar has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", "dflt": "none", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ "none", - "tozeroy", - "tozerox" + "toself", + "tonext" ] }, "fillcolor": { "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", - "editType": "calc", + "editType": "style", "role": "style", "valType": "color" }, @@ -31304,10 +35556,10 @@ "skip" ], "flags": [ - "x", - "y", - "z", + "r", + "theta", "text", + "name", "name" ], "role": "info", @@ -31408,6 +35660,30 @@ }, "role": "object" }, + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], + "role": "info", + "valType": "flaglist" + }, + "hovertext": { + "arrayOk": true, + "description": "Sets hover text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "hovertextsrc": { + "description": "Sets the source reference on plot.ly for hovertext .", + "editType": "none", + "role": "info", + "valType": "string" + }, "ids": { "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", @@ -31430,16 +35706,16 @@ "line": { "color": { "description": "Sets the line color.", - "editType": "calc", + "editType": "style", "role": "style", "valType": "color" }, "dash": { - "description": "Sets the style of the lines.", + "description": "Sets the dash style of lines. Set to a dash type string (*solid*, *dot*, *dash*, *longdash*, *dashdot*, or *longdashdot*) or a dash length list in px (eg *5px,10px,2px,2px*).", "dflt": "solid", - "editType": "calc", + "editType": "style", "role": "style", - "valType": "enumerated", + "valType": "string", "values": [ "solid", "dot", @@ -31449,12 +35725,32 @@ "longdashdot" ] }, - "editType": "calc", - "role": "object", + "editType": "calc", + "role": "object", + "shape": { + "description": "Determines the line shape. With *spline* the lines are drawn using spline interpolation. The other available values correspond to step-wise line shapes.", + "dflt": "linear", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ + "linear", + "spline" + ] + }, + "smoothing": { + "description": "Has an effect only if `shape` is set to *spline* Sets the amount of smoothing. *0* corresponds to no smoothing (equivalent to a *linear* shape).", + "dflt": 1, + "editType": "plot", + "max": 1.3, + "min": 0, + "role": "style", + "valType": "number" + }, "width": { "description": "Sets the line width (in px).", "dflt": 2, - "editType": "calc", + "editType": "style", "min": 0, "role": "style", "valType": "number" @@ -31480,7 +35776,7 @@ "cmax": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmin` must be set as well.", "dflt": null, - "editType": "calc", + "editType": "plot", "impliedEdits": { "cauto": false }, @@ -31490,7 +35786,7 @@ "cmin": { "description": "Has an effect only if `marker.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.color` array index, and if set, `marker.cmax` must be set as well.", "dflt": null, - "editType": "calc", + "editType": "plot", "impliedEdits": { "cauto": false }, @@ -31500,7 +35796,7 @@ "color": { "arrayOk": true, "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "calc", + "editType": "style", "role": "style", "valType": "color" }, @@ -31508,39 +35804,39 @@ "bgcolor": { "description": "Sets the color of padded area.", "dflt": "rgba(0,0,0,0)", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "bordercolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "borderwidth": { "description": "Sets the width (in px) or the border enclosing this color bar.", "dflt": 0, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" }, "dtick": { "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", + "editType": "colorbars", "impliedEdits": { "tickmode": "linear" }, "role": "style", "valType": "any" }, - "editType": "calc", + "editType": "colorbars", "exponentformat": { "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", "dflt": "B", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31555,7 +35851,7 @@ "len": { "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", "dflt": 1, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" @@ -31563,7 +35859,7 @@ "lenmode": { "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", "dflt": "fraction", - "editType": "calc", + "editType": "colorbars", "role": "info", "valType": "enumerated", "values": [ @@ -31574,7 +35870,7 @@ "nticks": { "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", "dflt": 0, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "integer" @@ -31582,14 +35878,14 @@ "outlinecolor": { "description": "Sets the axis line color.", "dflt": "#444", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "outlinewidth": { "description": "Sets the width (in px) of the axis line.", "dflt": 1, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" @@ -31598,14 +35894,14 @@ "separatethousands": { "description": "If \"true\", even 4-digit integers are separated", "dflt": false, - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "boolean" }, "showexponent": { "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", "dflt": "all", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31618,14 +35914,14 @@ "showticklabels": { "description": "Determines whether or not the tick labels are drawn.", "dflt": true, - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "boolean" }, "showtickprefix": { "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", "dflt": "all", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31638,7 +35934,7 @@ "showticksuffix": { "description": "Same as `showtickprefix` but for tick suffixes.", "dflt": "all", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31651,7 +35947,7 @@ "thickness": { "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", "dflt": 30, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" @@ -31659,7 +35955,7 @@ "thicknessmode": { "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", "dflt": "pixels", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31669,7 +35965,7 @@ }, "tick0": { "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", - "editType": "calc", + "editType": "colorbars", "impliedEdits": { "tickmode": "linear" }, @@ -31679,28 +35975,28 @@ "tickangle": { "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", "dflt": "auto", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "angle" }, "tickcolor": { "description": "Sets the tick color.", "dflt": "#444", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "tickfont": { "color": { - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "description": "Sets the color bar's tick label font", - "editType": "calc", + "editType": "colorbars", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", + "editType": "colorbars", "noBlank": true, "role": "style", "strict": true, @@ -31708,7 +36004,7 @@ }, "role": "object", "size": { - "editType": "calc", + "editType": "colorbars", "min": 1, "role": "style", "valType": "number" @@ -31717,7 +36013,7 @@ "tickformat": { "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", "dflt": "", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "string" }, @@ -31726,26 +36022,26 @@ "tickformatstop": { "dtickrange": { "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", + "editType": "colorbars", "items": [ { - "editType": "calc", + "editType": "colorbars", "valType": "any" }, { - "editType": "calc", + "editType": "colorbars", "valType": "any" } ], "role": "info", "valType": "info_array" }, - "editType": "calc", + "editType": "colorbars", "role": "object", "value": { "description": "string - dtickformat for described zoom level, the same as *tickformat*", "dflt": "", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "string" } @@ -31756,14 +36052,14 @@ "ticklen": { "description": "Sets the tick length (in px).", "dflt": 5, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" }, "tickmode": { "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", - "editType": "calc", + "editType": "colorbars", "impliedEdits": {}, "role": "info", "valType": "enumerated", @@ -31776,14 +36072,14 @@ "tickprefix": { "description": "Sets a tick label prefix.", "dflt": "", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "string" }, "ticks": { "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", "dflt": "", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31795,13 +36091,13 @@ "ticksuffix": { "description": "Sets a tick label suffix.", "dflt": "", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "string" }, "ticktext": { "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", - "editType": "calc", + "editType": "colorbars", "role": "data", "valType": "data_array" }, @@ -31813,7 +36109,7 @@ }, "tickvals": { "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", - "editType": "calc", + "editType": "colorbars", "role": "data", "valType": "data_array" }, @@ -31826,29 +36122,28 @@ "tickwidth": { "description": "Sets the tick width (in px).", "dflt": 1, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", - "editType": "calc", + "editType": "colorbars", "role": "info", "valType": "string" }, "titlefont": { "color": { - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "color" }, "description": "Sets this color bar's title font.", - "editType": "calc", + "editType": "colorbars", "family": { "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", + "editType": "colorbars", "noBlank": true, "role": "style", "strict": true, @@ -31856,7 +36151,7 @@ }, "role": "object", "size": { - "editType": "calc", + "editType": "colorbars", "min": 1, "role": "style", "valType": "number" @@ -31865,7 +36160,7 @@ "titleside": { "description": "Determines the location of the colorbar title with respect to the color bar.", "dflt": "top", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31877,7 +36172,7 @@ "x": { "description": "Sets the x position of the color bar (in plot fraction).", "dflt": 1.02, - "editType": "calc", + "editType": "colorbars", "max": 3, "min": -2, "role": "style", @@ -31886,7 +36181,7 @@ "xanchor": { "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", "dflt": "left", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31898,7 +36193,7 @@ "xpad": { "description": "Sets the amount of padding (in px) along the x direction.", "dflt": 10, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" @@ -31906,7 +36201,7 @@ "y": { "description": "Sets the y position of the color bar (in plot fraction).", "dflt": 0.5, - "editType": "calc", + "editType": "colorbars", "max": 3, "min": -2, "role": "style", @@ -31915,7 +36210,7 @@ "yanchor": { "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", "dflt": "middle", - "editType": "calc", + "editType": "colorbars", "role": "style", "valType": "enumerated", "values": [ @@ -31927,14 +36222,14 @@ "ypad": { "description": "Sets the amount of padding (in px) along the y direction.", "dflt": 10, - "editType": "calc", + "editType": "colorbars", "min": 0, "role": "style", "valType": "number" } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -31949,6 +36244,43 @@ "valType": "string" }, "editType": "calc", + "gradient": { + "color": { + "arrayOk": true, + "description": "Sets the final color of the gradient fill: the center color for radial, the right for horizontal, or the bottom for vertical.", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "role": "object", + "type": { + "arrayOk": true, + "description": "Sets the type of gradient used to fill the markers", + "dflt": "none", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "radial", + "horizontal", + "vertical", + "none" + ] + }, + "typesrc": { + "description": "Sets the source reference on plot.ly for type .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, "line": { "autocolorscale": { "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", @@ -31969,7 +36301,7 @@ "cmax": { "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", "dflt": null, - "editType": "calc", + "editType": "plot", "impliedEdits": { "cauto": false }, @@ -31979,7 +36311,7 @@ "cmin": { "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", "dflt": null, - "editType": "calc", + "editType": "plot", "impliedEdits": { "cauto": false }, @@ -31989,12 +36321,12 @@ "color": { "arrayOk": true, "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", - "editType": "calc", + "editType": "style", "role": "style", "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -32020,7 +36352,7 @@ "width": { "arrayOk": true, "description": "Sets the width (in px) of the lines bounding the marker points.", - "editType": "calc", + "editType": "style", "min": 0, "role": "style", "valType": "number" @@ -32032,10 +36364,18 @@ "valType": "string" } }, + "maxdisplayed": { + "description": "Sets a maximum number of points to be drawn on the graph. *0* corresponds to no limit.", + "dflt": 0, + "editType": "plot", + "min": 0, + "role": "style", + "valType": "number" + }, "opacity": { "arrayOk": true, "description": "Sets the marker opacity.", - "editType": "calc", + "editType": "style", "max": 1, "min": 0, "role": "style", @@ -32066,7 +36406,7 @@ "arrayOk": true, "description": "Sets the marker size (in px).", "dflt": 6, - "editType": "calc", + "editType": "calcIfAutorange", "min": 0, "role": "style", "valType": "number" @@ -32105,68 +36445,296 @@ }, "symbol": { "arrayOk": true, - "description": "Sets the marker symbol type.", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", "dflt": "circle", - "editType": "calc", + "editType": "style", "role": "style", "valType": "enumerated", "values": [ + 0, "circle", - "square", - "diamond", - "cross", - "x", - "triangle-up", - "triangle-down", - "triangle-left", - "triangle-right", - "triangle-ne", - "triangle-nw", - "triangle-se", - "triangle-sw", - "pentagon", - "hexagon", - "hexagon2", - "star", - "diamond-tall", - "bowtie", - "diamond-x", - "cross-thin", - "asterisk", - "y-up", - "y-down", - "line-ew", - "line-ns", + 100, "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, "triangle-ne-open", - "triangle-nw-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, "diamond-x-open", + 33, + "cross-thin", + 133, "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, "y-up-open", + 38, + "y-down", + 138, "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, "line-ew-open", + 42, + "line-ns", + 142, "line-ns-open", - "circle-cross-open", - "circle-x-open", - "square-cross-open", - "square-x-open" + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" ] }, "symbolsrc": { @@ -32177,14 +36745,15 @@ } }, "mode": { - "description": "Determines the drawing mode for this scatter trace.", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", "editType": "calc", "extras": [ "none" ], "flags": [ "lines", - "markers" + "markers", + "text" ], "role": "info", "valType": "flaglist" @@ -32204,6 +36773,63 @@ "role": "style", "valType": "number" }, + "r": { + "description": "Sets the radial coordinates", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "rsrc": { + "description": "Sets the source reference on plot.ly for r .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -32232,147 +36858,186 @@ "valType": "string" } }, + "subplot": { + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", + "dflt": "polar", + "editType": "calc", + "role": "info", + "valType": "subplotid" + }, "text": { "arrayOk": true, - "description": "Sets text elements associated with each (x,y) pair to appear on hover. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates.", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "type": "scattergl", - "uid": { - "dflt": "", + "textfont": { + "color": { + "arrayOk": true, + "editType": "style", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the text font.", "editType": "calc", - "role": "info", - "valType": "string" + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + } }, - "visible": { - "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", - "dflt": true, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", "editType": "calc", - "role": "info", + "role": "style", "valType": "enumerated", "values": [ - true, - false, - "legendonly" + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" ] }, - "x": { - "description": "Sets the x coordinates.", + "textpositionsrc": { + "description": "Sets the source reference on plot.ly for textposition .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "theta": { + "description": "Sets the angular coordinates", "editType": "calc+clearAxisTypes", "role": "data", "valType": "data_array" }, - "x0": { - "description": "Alternate to `x`. Builds a linear space of x coordinates. Use with `dx` where `x0` is the starting coordinate and `dx` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", + "thetasrc": { + "description": "Sets the source reference on plot.ly for theta .", + "editType": "none", "role": "info", - "valType": "any" + "valType": "string" }, - "xaxis": { - "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "x", + "thetaunit": { + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", + "dflt": "degrees", "editType": "calc+clearAxisTypes", "role": "info", - "valType": "subplotid" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", "valType": "enumerated", "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" + "radians", + "degrees", + "gradians" ] }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", + "type": "scatterpolar", + "uid": { + "dflt": "", + "editType": "calc", "role": "info", "valType": "string" }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "y0": { - "description": "Alternate to `y`. Builds a linear space of y coordinates. Use with `dy` where `y0` is the starting coordinate and `dy` the step.", - "dflt": 0, - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "any" - }, - "yaxis": { - "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", - "dflt": "y", - "editType": "calc+clearAxisTypes", - "role": "info", - "valType": "subplotid" + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, "editType": "calc", "role": "info", "valType": "enumerated", "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" + true, + false, + "legendonly" ] - }, - "ysrc": { - "description": "Sets the source reference on plot.ly for y .", - "editType": "none", - "role": "info", - "valType": "string" } }, "meta": { - "description": "The data visualized as scatter point or lines is set in `x` and `y` using the WebGl plotting engine. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to a numerical arrays." + "description": "The scatterpolar trace type encompasses line charts, scatter charts, text charts, and bubble charts in polar coordinates. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Text (appearing either on the chart or on hover only) is via `text`. Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", + "hrName": "scatter_polar" } }, - "scattermapbox": { + "scatterpolargl": { "attributes": { "connectgaps": { "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", @@ -32394,14 +37059,19 @@ "valType": "string" }, "fill": { - "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape.", + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. *tozerox* and *tozeroy* fill to x=0 and y=0 respectively. *tonextx* and *tonexty* fill between the endpoints of this trace and the endpoints of the trace before it, connecting those endpoints with straight lines (to make a stacked area graph); if there is no trace before it, they behave like *tozerox* and *tozeroy*. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", "dflt": "none", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ "none", - "toself" + "tozeroy", + "tozerox", + "tonexty", + "tonextx", + "toself", + "tonext" ] }, "fillcolor": { @@ -32414,15 +37084,15 @@ "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", "dflt": "all", - "editType": "calc", + "editType": "none", "extras": [ "all", "none", "skip" ], "flags": [ - "lon", - "lat", + "r", + "theta", "text", "name", "name" @@ -32525,19 +37195,15 @@ }, "role": "object" }, - "hovertext": { - "arrayOk": true, - "description": "Sets hover text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", - "dflt": "", - "editType": "calc", - "role": "info", - "valType": "string" - }, - "hovertextsrc": { - "description": "Sets the source reference on plot.ly for hovertext .", - "editType": "none", + "hoveron": { + "description": "Do the hover effects highlight individual points (markers or line points) or do they highlight filled regions? If the fill is *toself* or *tonext* and there are no markers or text, then the default is *fills*, otherwise it is *points*.", + "editType": "style", + "flags": [ + "points", + "fills" + ], "role": "info", - "valType": "string" + "valType": "flaglist" }, "ids": { "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", @@ -32551,18 +37217,6 @@ "role": "info", "valType": "string" }, - "lat": { - "description": "Sets the latitude coordinates (in degrees North).", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "latsrc": { - "description": "Sets the source reference on plot.ly for lat .", - "editType": "none", - "role": "info", - "valType": "string" - }, "legendgroup": { "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", "dflt": "", @@ -32577,6 +37231,21 @@ "role": "style", "valType": "color" }, + "dash": { + "description": "Sets the style of the lines.", + "dflt": "solid", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "solid", + "dot", + "dash", + "longdash", + "dashdot", + "longdashdot" + ] + }, "editType": "calc", "role": "object", "width": { @@ -32588,18 +37257,6 @@ "valType": "number" } }, - "lon": { - "description": "Sets the longitude coordinates (in degrees East).", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "lonsrc": { - "description": "Sets the source reference on plot.ly for lon .", - "editType": "none", - "role": "info", - "valType": "string" - }, "marker": { "autocolorscale": { "description": "Has an effect only if `marker.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", @@ -32973,7 +37630,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "calc", "role": "info", "valType": "string" @@ -33035,60 +37691,143 @@ "right" ] }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, + "editType": "calc", + "max": 3, + "min": -2, + "role": "style", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Determines whether the colorscale is a default palette (`autocolorscale: true`) or the palette determined by `marker.line.colorscale`. In case `colorscale` is unspecified or `autocolorscale` is true, the default palette will be chosen according to whether numbers in the `color` array are all positive, all negative or mixed.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "style", + "valType": "boolean" + }, + "cauto": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array and `cmin`, `cmax` are set by the user. In this case, it controls whether the range of colors in `colorscale` is mapped to the range of values in the `color` array (`cauto: true`), or the `cmin`/`cmax` values (`cauto: false`). Defaults to `false` when `cmin`, `cmax` are set by the user.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "role": "info", + "valType": "boolean" + }, + "cmax": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the upper bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmin` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "cmin": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Sets the lower bound of the color domain. Value should be associated to the `marker.line.color` array index, and if set, `marker.line.cmax` must be set as well.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "role": "info", + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", "editType": "calc", - "min": 0, "role": "style", - "valType": "number" + "valType": "color" }, - "y": { - "description": "Sets the y position of the color bar (in plot fraction).", - "dflt": 0.5, + "colorscale": { + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", - "max": 3, - "min": -2, + "impliedEdits": { + "autocolorscale": false + }, "role": "style", - "valType": "number" + "valType": "colorscale" }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", - "dflt": "middle", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "reversescale": { + "description": "Has an effect only if `marker.line.color` is set to a numerical array. Reverses the color mapping if true (`cmin` will correspond to the last color in the array and `cmax` will correspond to the first color).", + "dflt": false, "editType": "calc", "role": "style", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] + "valType": "boolean" }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", "editType": "calc", "min": 0, "role": "style", "valType": "number" - } - }, - "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", - "editType": "calc", - "impliedEdits": { - "autocolorscale": false }, - "role": "style", - "valType": "colorscale" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" + } }, - "editType": "calc", "opacity": { "arrayOk": true, "description": "Sets the marker opacity.", @@ -33162,11 +37901,297 @@ }, "symbol": { "arrayOk": true, - "description": "Sets the marker symbol. Full list: https://www.mapbox.com/maki-icons/ Note that the array `marker.color` and `marker.size` are only available for *circle* symbols.", + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", "dflt": "circle", "editType": "calc", "role": "style", - "valType": "string" + "valType": "enumerated", + "values": [ + 0, + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ] }, "symbolsrc": { "description": "Sets the source reference on plot.ly for symbol .", @@ -33176,8 +38201,7 @@ } }, "mode": { - "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover.", - "dflt": "markers", + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points, then the default is *lines+markers*. Otherwise, *lines*.", "editType": "calc", "extras": [ "none" @@ -33205,6 +38229,63 @@ "role": "style", "valType": "number" }, + "r": { + "description": "Sets the radial coordinates", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "rsrc": { + "description": "Sets the source reference on plot.ly for r .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -33234,77 +38315,96 @@ } }, "subplot": { - "description": "Sets a reference between this trace's data coordinates and a mapbox subplot. If *mapbox* (the default value), the data refer to `layout.mapbox`. If *mapbox2*, the data refer to `layout.mapbox2`, and so on.", - "dflt": "mapbox", + "description": "Sets a reference between this trace's data coordinates and a polar subplot. If *polar* (the default value), the data refer to `layout.polar`. If *polar2*, the data refer to `layout.polar2`, and so on.", + "dflt": "polar", "editType": "calc", "role": "info", "valType": "subplotid" }, "text": { "arrayOk": true, - "description": "Sets text elements associated with each (lon,lat) pair If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (lon,lat) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "description": "Sets text elements associated with each (x,y) pair. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, - "textfont": { - "color": { - "editType": "calc", - "role": "style", - "valType": "color" - }, - "description": "Sets the icon text font. Has an effect only when `type` is set to *symbol*.", - "editType": "calc", - "family": { - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "dflt": "Open Sans Regular, Arial Unicode MS Regular", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "role": "object", - "size": { - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - } - }, - "textposition": { - "arrayOk": false, - "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", - "dflt": "middle center", - "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "top left", - "top center", - "top right", - "middle left", - "middle center", - "middle right", - "bottom left", - "bottom center", - "bottom right" - ] - }, "textsrc": { "description": "Sets the source reference on plot.ly for text .", "editType": "none", "role": "info", "valType": "string" }, - "type": "scattermapbox", + "theta": { + "description": "Sets the angular coordinates", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "thetasrc": { + "description": "Sets the source reference on plot.ly for theta .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "thetaunit": { + "description": "Sets the unit of input *theta* values. Has an effect only when on *linear* angular axes.", + "dflt": "degrees", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "enumerated", + "values": [ + "radians", + "degrees", + "gradians" + ] + }, + "type": "scatterpolargl", "uid": { "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -33319,8 +38419,8 @@ } }, "meta": { - "description": "The data visualized as scatter point, lines or marker symbols on a Mapbox GL geographic map is provided by longitude/latitude pairs in `lon` and `lat`.", - "hrName": "scatter_mapbox" + "description": "The scatterpolargl trace type encompasses line charts, scatter charts, and bubble charts in polar coordinates using the WebGL plotting engine. The data visualized as scatter point or lines is set in `r` (radial) and `theta` (angular) coordinates Bubble charts are achieved by setting `marker.size` and/or `marker.color` to numerical arrays.", + "hrName": "scatter_polar_gl" } }, "scatterternary": { @@ -33989,7 +39089,6 @@ }, "title": { "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", "editType": "colorbars", "role": "info", "valType": "string" @@ -34090,7 +39189,7 @@ } }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.cmin` and `marker.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -34187,7 +39286,7 @@ "valType": "color" }, "colorscale": { - "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis", + "description": "Sets the colorscale and only has an effect if `marker.line.color` is set to a numerical array. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in color space, use `marker.line.cmin` and `marker.line.cmax`. Alternatively, `colorscale` may be a palette name string of the following list: Greys, YlGnBu, Greens, YlOrRd, Bluered, RdBu, Reds, Blues, Picnic, Rainbow, Portland, Jet, Hot, Blackbody, Earth, Electric, Viridis, Cividis", "editType": "calc", "impliedEdits": { "autocolorscale": false @@ -34635,6 +39734,51 @@ "role": "style", "valType": "number" }, + "selected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", "dflt": true, @@ -34769,6 +39913,45 @@ "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object" + } + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -34870,334 +40053,1200 @@ "role": "style", "valType": "color" }, - "borderwidth": { - "description": "Sets the width (in px) or the border enclosing this color bar.", - "dflt": 0, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", + "dflt": "B", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B" + ] + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "integer" + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "role": "style", + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "role": "style", + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "role": "style", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "role": "style", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" + }, + "editType": "calc", + "role": "object", + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "role": "style", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, "editType": "calc", "min": 0, "role": "style", "valType": "number" }, - "dtick": { - "description": "Sets the step in-between ticks on this axis. Use with `tick0`. Must be a positive number, or special strings available to *log* and *date* axes. If the axis `type` is *log*, then ticks are set every 10^(n*dtick) where n is the tick number. For example, to set a tick mark at 1, 10, 100, 1000, ... set dtick to 1. To set tick marks at 1, 100, 10000, ... set dtick to 2. To set tick marks at 1, 5, 25, 125, 625, 3125, ... set dtick to log_10(5), or 0.69897000433. *log* has several special values; *L*, where `f` is a positive number, gives ticks linearly spaced in value (but not position). For example `tick0` = 0.1, `dtick` = *L0.5* will put ticks at 0.1, 0.6, 1.1, 1.6 etc. To show powers of 10 plus small digits between, use *D1* (all digits) or *D2* (only 2 and 5). `tick0` is ignored for *D1* and *D2*. If the axis `type` is *date*, then you must convert the time to milliseconds. For example, to set the interval between ticks to one day, set `dtick` to 86400000.0. *date* also has special values *M* gives ticks spaced by a number of months. `n` must be a positive integer. To set ticks on the 15th of every third month, set `tick0` to *2000-01-15* and `dtick` to *M3*. To set ticks every 4 years, set `dtick` to *M48*", - "editType": "calc", - "impliedEdits": { - "tickmode": "linear" - }, - "role": "style", - "valType": "any" - }, - "editType": "calc", - "exponentformat": { - "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B.", - "dflt": "B", + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", "editType": "calc", - "role": "style", + "impliedEdits": {}, + "role": "info", "valType": "enumerated", "values": [ - "none", - "e", - "E", - "power", - "SI", - "B" + "auto", + "linear", + "array" ] }, - "len": { - "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", - "dflt": 1, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", "editType": "calc", - "min": 0, "role": "style", - "valType": "number" + "valType": "string" }, - "lenmode": { - "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", - "dflt": "fraction", + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", "editType": "calc", - "role": "info", + "role": "style", "valType": "enumerated", "values": [ - "fraction", - "pixels" + "outside", + "inside", + "" ] }, - "nticks": { - "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", - "dflt": 0, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", "editType": "calc", - "min": 0, "role": "style", - "valType": "integer" + "valType": "string" }, - "outlinecolor": { - "description": "Sets the axis line color.", - "dflt": "#444", + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", "editType": "calc", - "role": "style", - "valType": "color" + "role": "data", + "valType": "data_array" }, - "outlinewidth": { - "description": "Sets the width (in px) of the axis line.", + "ticktextsrc": { + "description": "Sets the source reference on plot.ly for ticktext .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "tickvalssrc": { + "description": "Sets the source reference on plot.ly for tickvals .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", "dflt": 1, "editType": "calc", "min": 0, "role": "style", "valType": "number" }, - "role": "object", - "separatethousands": { - "description": "If \"true\", even 4-digit integers are separated", - "dflt": false, + "title": { + "description": "Sets the title of the color bar.", "editType": "calc", - "role": "style", - "valType": "boolean" + "role": "info", + "valType": "string" }, - "showexponent": { - "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", - "dflt": "all", + "titlefont": { + "color": { + "editType": "calc", + "role": "style", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", + "editType": "calc", + "noBlank": true, + "role": "style", + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "editType": "calc", + "min": 1, + "role": "style", + "valType": "number" + } + }, + "titleside": { + "description": "Determines the location of the colorbar title with respect to the color bar.", + "dflt": "top", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ - "all", - "first", - "last", - "none" + "right", + "top", + "bottom" ] }, - "showticklabels": { - "description": "Determines whether or not the tick labels are drawn.", - "dflt": true, + "x": { + "description": "Sets the x position of the color bar (in plot fraction).", + "dflt": 1.02, "editType": "calc", + "max": 3, + "min": -2, "role": "style", - "valType": "boolean" + "valType": "number" }, - "showtickprefix": { - "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", - "dflt": "all", + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", + "dflt": "left", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ - "all", - "first", - "last", - "none" + "left", + "center", + "right" ] }, - "showticksuffix": { - "description": "Same as `showtickprefix` but for tick suffixes.", - "dflt": "all", + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, "editType": "calc", + "min": 0, "role": "style", - "valType": "enumerated", - "values": [ - "all", - "first", - "last", - "none" - ] + "valType": "number" }, - "thickness": { - "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", - "dflt": 30, + "y": { + "description": "Sets the y position of the color bar (in plot fraction).", + "dflt": 0.5, "editType": "calc", - "min": 0, + "max": 3, + "min": -2, "role": "style", "valType": "number" }, - "thicknessmode": { - "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", - "dflt": "pixels", + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", + "dflt": "middle", "editType": "calc", "role": "style", "valType": "enumerated", "values": [ - "fraction", - "pixels" + "top", + "middle", + "bottom" ] }, - "tick0": { - "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, "editType": "calc", - "impliedEdits": { - "tickmode": "linear" + "min": 0, + "role": "style", + "valType": "number" + } + }, + "colorscale": { + "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in z space, use zmin and zmax", + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "role": "style", + "valType": "colorscale" + }, + "contours": { + "editType": "calc", + "role": "object", + "x": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "highlight": { + "description": "Determines whether or not contour lines about the x dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the x dimension are drawn.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + } + }, + "y": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "highlight": { + "description": "Determines whether or not contour lines about the y dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the y dimension are drawn.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + } + }, + "z": { + "color": { + "description": "Sets the color of the contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "editType": "calc", + "highlight": { + "description": "Determines whether or not contour lines about the z dimension are highlighted on hover.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "highlightcolor": { + "description": "Sets the color of the highlighted contour lines.", + "dflt": "#444", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "highlightwidth": { + "description": "Sets the width of the highlighted contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + }, + "project": { + "editType": "calc", + "role": "object", + "x": { + "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "y": { + "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "z": { + "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + } + }, + "role": "object", + "show": { + "description": "Determines whether or not contour lines about the z dimension are drawn.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "usecolormap": { + "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the contour lines.", + "dflt": 2, + "editType": "calc", + "max": 16, + "min": 1, + "role": "style", + "valType": "number" + } + } + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hidesurface": { + "description": "Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot.", + "dflt": false, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "calc", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], + "role": "info", + "valType": "flaglist" + }, + "hoverinfosrc": { + "description": "Sets the source reference on plot.ly for hoverinfo .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "hoverlabel": { + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", "role": "style", - "valType": "any" + "valType": "color" }, - "tickangle": { - "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", - "dflt": "auto", - "editType": "calc", - "role": "style", - "valType": "angle" + "bgcolorsrc": { + "description": "Sets the source reference on plot.ly for bgcolor .", + "editType": "none", + "role": "info", + "valType": "string" }, - "tickcolor": { - "description": "Sets the tick color.", - "dflt": "#444", - "editType": "calc", + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", "role": "style", "valType": "color" }, - "tickfont": { + "bordercolorsrc": { + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "font": { "color": { - "editType": "calc", + "arrayOk": true, + "editType": "none", "role": "style", "valType": "color" }, - "description": "Sets the color bar's tick label font", - "editType": "calc", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "Sets the font used in hover labels.", + "editType": "none", "family": { + "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", + "editType": "none", "noBlank": true, "role": "style", "strict": true, "valType": "string" }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, "role": "object", "size": { - "editType": "calc", + "arrayOk": true, + "editType": "none", "min": 1, "role": "style", "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "tickformat": { - "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/blob/master/README.md#locale_format And for dates see: https://github.com/d3/d3-time-format/blob/master/README.md#locale_format We add one item to d3's date formatter: *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", - "dflt": "", - "editType": "calc", + "namelength": { + "arrayOk": true, + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", + "editType": "none", + "min": -1, "role": "style", + "valType": "integer" + }, + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", + "editType": "none", + "role": "info", "valType": "string" }, - "tickformatstops": { - "items": { - "tickformatstop": { - "dtickrange": { - "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", - "editType": "calc", - "items": [ - { - "editType": "calc", - "valType": "any" - }, - { - "editType": "calc", - "valType": "any" - } - ], - "role": "info", - "valType": "info_array" - }, - "editType": "calc", - "role": "object", - "value": { - "description": "string - dtickformat for described zoom level, the same as *tickformat*", - "dflt": "", - "editType": "calc", - "role": "style", - "valType": "string" - } - } - }, - "role": "object" + "role": "object" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "role": "info", + "valType": "string" + }, + "lighting": { + "ambient": { + "description": "Ambient light increases overall color visibility but can wash out the image.", + "dflt": 0.8, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" }, - "ticklen": { - "description": "Sets the tick length (in px).", - "dflt": 5, + "diffuse": { + "description": "Represents the extent that incident rays are reflected in a range of angles.", + "dflt": 0.8, "editType": "calc", + "max": 1, "min": 0, "role": "style", "valType": "number" }, - "tickmode": { - "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "fresnel": { + "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", + "dflt": 0.2, "editType": "calc", - "impliedEdits": {}, - "role": "info", - "valType": "enumerated", - "values": [ - "auto", - "linear", - "array" - ] + "max": 5, + "min": 0, + "role": "style", + "valType": "number" }, - "tickprefix": { - "description": "Sets a tick label prefix.", - "dflt": "", + "role": "object", + "roughness": { + "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", + "dflt": 0.5, "editType": "calc", + "max": 1, + "min": 0, "role": "style", - "valType": "string" + "valType": "number" }, - "ticks": { - "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", - "dflt": "", + "specular": { + "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", + "dflt": 0.05, "editType": "calc", + "max": 2, + "min": 0, "role": "style", - "valType": "enumerated", - "values": [ - "outside", - "inside", - "" - ] + "valType": "number" + } + }, + "lightposition": { + "editType": "calc", + "role": "object", + "x": { + "description": "Numeric vector, representing the X coordinate for each vertex.", + "dflt": 10, + "editType": "calc", + "max": 100000, + "min": -100000, + "role": "style", + "valType": "number" }, - "ticksuffix": { - "description": "Sets a tick label suffix.", - "dflt": "", + "y": { + "description": "Numeric vector, representing the Y coordinate for each vertex.", + "dflt": 10000, "editType": "calc", + "max": 100000, + "min": -100000, "role": "style", - "valType": "string" + "valType": "number" }, - "ticktext": { - "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "z": { + "description": "Numeric vector, representing the Z coordinate for each vertex.", + "dflt": 0, "editType": "calc", - "role": "data", - "valType": "data_array" + "max": 100000, + "min": -100000, + "role": "style", + "valType": "number" + } + }, + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover.", + "editType": "style", + "role": "info", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the surface.", + "dflt": 1, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "reversescale": { + "description": "Reverses the colorscale.", + "dflt": false, + "editType": "calc", + "role": "style", + "valType": "boolean" + }, + "scene": { + "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", + "dflt": "scene", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "role": "info", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "role": "info", + "valType": "boolean" + }, + "showscale": { + "description": "Determines whether or not a colorbar is displayed for this trace.", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "boolean" + }, + "stream": { + "editType": "calc", + "maxpoints": { + "description": "Sets the maximum number of points to keep on the plots from an incoming stream. If `maxpoints` is set to *50*, only the newest 50 points will be displayed on the plot.", + "dflt": 500, + "editType": "calc", + "max": 10000, + "min": 0, + "role": "info", + "valType": "number" }, - "ticktextsrc": { - "description": "Sets the source reference on plot.ly for ticktext .", - "editType": "none", + "role": "object", + "token": { + "description": "The stream id number links a data trace on a plot with a stream. See https://plot.ly/settings for more details.", + "editType": "calc", + "noBlank": true, "role": "info", + "strict": true, "valType": "string" - }, - "tickvals": { - "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + } + }, + "surfacecolor": { + "description": "Sets the surface color values, used for setting a color scale independent of `z`.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "surfacecolorsrc": { + "description": "Sets the source reference on plot.ly for surfacecolor .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each z value. If trace `hoverinfo` contains a *text* flag and *hovertext* is not set, these elements will be seen in the hover labels.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "surface", + "uid": { + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + }, + "x": { + "description": "Sets the x coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "xcalendar": { + "description": "Sets the calendar system to use with `x` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "ycalendar": { + "description": "Sets the calendar system to use with `y` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "z": { + "description": "Sets the z coordinates.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "zcalendar": { + "description": "Sets the calendar system to use with `z` date data.", + "dflt": "gregorian", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "gregorian", + "chinese", + "coptic", + "discworld", + "ethiopian", + "hebrew", + "islamic", + "julian", + "mayan", + "nanakshahi", + "nepali", + "persian", + "jalali", + "taiwan", + "thai", + "ummalqura" + ] + }, + "zsrc": { + "description": "Sets the source reference on plot.ly for z .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "meta": { + "description": "The data the describes the coordinates of the surface is set in `z`. Data in `z` should be a {2D array}. Coordinates in `x` and `y` can either be 1D {arrays} or {2D arrays} (e.g. to graph parametric surfaces). If not provided in `x` and `y`, the x and y coordinates are assumed to be linear starting at 0 with a unit step. The color scale corresponds to the `z` values by default. For custom color scales, use `surfacecolor` which should be a {2D array}, where its bounds can be controlled using `cmin` and `cmax`." + } + }, + "table": { + "attributes": { + "cells": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", "editType": "calc", - "role": "data", - "valType": "data_array" + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] }, - "tickvalssrc": { - "description": "Sets the source reference on plot.ly for tickvals .", + "alignsrc": { + "description": "Sets the source reference on plot.ly for align .", "editType": "none", "role": "info", "valType": "string" }, - "tickwidth": { - "description": "Sets the tick width (in px).", - "dflt": 1, - "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" - }, - "title": { - "description": "Sets the title of the color bar.", - "dflt": "Click to enter colorscale title", + "editType": "calc", + "fill": { + "color": { + "arrayOk": true, + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors.", + "dflt": "white", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "editType": "calc", - "role": "info", - "valType": "string" + "role": "object" }, - "titlefont": { + "font": { "color": { + "arrayOk": true, "editType": "calc", "role": "style", "valType": "color" }, - "description": "Sets this color bar's title font.", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "description": "", "editType": "calc", "family": { + "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", "noBlank": true, @@ -35205,363 +41254,388 @@ "strict": true, "valType": "string" }, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, "role": "object", "size": { + "arrayOk": true, "editType": "calc", "min": 1, "role": "style", "valType": "number" + }, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "titleside": { - "description": "Determines the location of the colorbar title with respect to the color bar.", - "dflt": "top", + "format": { + "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", + "dflt": [], "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "right", - "top", - "bottom" - ] + "role": "data", + "valType": "data_array" }, - "x": { - "description": "Sets the x position of the color bar (in plot fraction).", - "dflt": 1.02, + "formatsrc": { + "description": "Sets the source reference on plot.ly for format .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "height": { + "description": "The height of cells.", + "dflt": 20, "editType": "calc", - "max": 3, - "min": -2, "role": "style", "valType": "number" }, - "xanchor": { - "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.", - "dflt": "left", + "line": { + "color": { + "arrayOk": true, + "dflt": "grey", + "editType": "calc", + "role": "style", + "valType": "color" + }, + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", + "role": "info", + "valType": "string" + }, "editType": "calc", - "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] + "role": "object", + "width": { + "arrayOk": true, + "dflt": 1, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" + } }, - "xpad": { - "description": "Sets the amount of padding (in px) along the x direction.", - "dflt": 10, + "prefix": { + "arrayOk": true, + "description": "Prefix for cell values.", + "dflt": null, "editType": "calc", - "min": 0, "role": "style", - "valType": "number" + "valType": "string" }, - "y": { - "description": "Sets the y position of the color bar (in plot fraction).", - "dflt": 0.5, - "editType": "calc", - "max": 3, - "min": -2, - "role": "style", - "valType": "number" + "prefixsrc": { + "description": "Sets the source reference on plot.ly for prefix .", + "editType": "none", + "role": "info", + "valType": "string" }, - "yanchor": { - "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.", - "dflt": "middle", + "role": "object", + "suffix": { + "arrayOk": true, + "description": "Suffix for cell values.", + "dflt": null, "editType": "calc", "role": "style", - "valType": "enumerated", - "values": [ - "top", - "middle", - "bottom" - ] + "valType": "string" }, - "ypad": { - "description": "Sets the amount of padding (in px) along the y direction.", - "dflt": 10, + "suffixsrc": { + "description": "Sets the source reference on plot.ly for suffix .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "values": { + "description": "Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "dflt": [], "editType": "calc", - "min": 0, - "role": "style", - "valType": "number" + "role": "data", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on plot.ly for values .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "colorscale": { - "description": "Sets the colorscale. The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example, `[[0, 'rgb(0,0,255)', [1, 'rgb(255,0,0)']]`. To control the bounds of the colorscale in z space, use zmin and zmax", + "columnorder": { + "description": "Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero.", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "columnordersrc": { + "description": "Sets the source reference on plot.ly for columnorder .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "columnwidth": { + "arrayOk": true, + "description": "The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths.", + "dflt": null, "editType": "calc", - "impliedEdits": { - "autocolorscale": false - }, "role": "style", - "valType": "colorscale" + "valType": "number" }, - "contours": { + "columnwidthsrc": { + "description": "Sets the source reference on plot.ly for columnwidth .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "domain": { "editType": "calc", "role": "object", "x": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "role": "style", - "valType": "color" - }, + "description": "Sets the horizontal domain of this table trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], "editType": "calc", - "highlight": { - "description": "Determines whether or not contour lines about the x dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "role": "style", - "valType": "number" - }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, + "items": [ + { "editType": "calc", - "role": "info", - "valType": "boolean" + "max": 1, + "min": 0, + "valType": "number" }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, + { "editType": "calc", - "role": "info", - "valType": "boolean" + "max": 1, + "min": 0, + "valType": "number" } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the x dimension are drawn.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "role": "style", - "valType": "number" - } + ], + "role": "info", + "valType": "info_array" }, "y": { - "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", - "editType": "calc", - "role": "style", - "valType": "color" - }, + "description": "Sets the vertical domain of this table trace (in plot fraction).", + "dflt": [ + 0, + 1 + ], "editType": "calc", - "highlight": { - "description": "Determines whether or not contour lines about the y dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "role": "style", - "valType": "number" - }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, + "items": [ + { "editType": "calc", - "role": "info", - "valType": "boolean" + "max": 1, + "min": 0, + "valType": "number" }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, + { "editType": "calc", - "role": "info", - "valType": "boolean" + "max": 1, + "min": 0, + "valType": "number" } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the y dimension are drawn.", - "dflt": false, + ], + "role": "info", + "valType": "info_array" + } + }, + "editType": "calc", + "header": { + "align": { + "arrayOk": true, + "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", + "dflt": "center", + "editType": "calc", + "role": "style", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "alignsrc": { + "description": "Sets the source reference on plot.ly for align .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "editType": "calc", + "fill": { + "color": { + "arrayOk": true, + "description": "Sets the cell fill color. It accepts either a specific color or an array of colors.", + "dflt": "white", "editType": "calc", - "role": "info", - "valType": "boolean" + "role": "style", + "valType": "color" }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", "role": "info", - "valType": "boolean" + "valType": "string" }, - "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, - "editType": "calc", - "max": 16, - "min": 1, - "role": "style", - "valType": "number" - } + "editType": "calc", + "role": "object" }, - "z": { + "font": { "color": { - "description": "Sets the color of the contour lines.", - "dflt": "#444", + "arrayOk": true, "editType": "calc", "role": "style", "valType": "color" }, - "editType": "calc", - "highlight": { - "description": "Determines whether or not contour lines about the z dimension are highlighted on hover.", - "dflt": true, - "editType": "calc", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", "role": "info", - "valType": "boolean" + "valType": "string" }, - "highlightcolor": { - "description": "Sets the color of the highlighted contour lines.", - "dflt": "#444", + "description": "", + "editType": "calc", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", "editType": "calc", + "noBlank": true, "role": "style", - "valType": "color" + "strict": true, + "valType": "string" }, - "highlightwidth": { - "description": "Sets the width of the highlighted contour lines.", - "dflt": 2, + "familysrc": { + "description": "Sets the source reference on plot.ly for family .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, "editType": "calc", - "max": 16, "min": 1, "role": "style", "valType": "number" }, - "project": { - "editType": "calc", - "role": "object", - "x": { - "description": "Determines whether or not these contour lines are projected on the x plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "y": { - "description": "Determines whether or not these contour lines are projected on the y plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, - "z": { - "description": "Determines whether or not these contour lines are projected on the z plane. If `highlight` is set to *true* (the default), the projected lines are shown on hover. If `show` is set to *true*, the projected lines are shown in permanence.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - } - }, - "role": "object", - "show": { - "description": "Determines whether or not contour lines about the z dimension are drawn.", - "dflt": false, + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "format": { + "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "formatsrc": { + "description": "Sets the source reference on plot.ly for format .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "height": { + "description": "The height of cells.", + "dflt": 28, + "editType": "calc", + "role": "style", + "valType": "number" + }, + "line": { + "color": { + "arrayOk": true, + "dflt": "grey", "editType": "calc", - "role": "info", - "valType": "boolean" + "role": "style", + "valType": "color" }, - "usecolormap": { - "description": "An alternate to *color*. Determines whether or not the contour lines are colored using the trace *colorscale*.", - "dflt": false, - "editType": "calc", + "colorsrc": { + "description": "Sets the source reference on plot.ly for color .", + "editType": "none", "role": "info", - "valType": "boolean" + "valType": "string" }, + "editType": "calc", + "role": "object", "width": { - "description": "Sets the width of the contour lines.", - "dflt": 2, + "arrayOk": true, + "dflt": 1, "editType": "calc", - "max": 16, - "min": 1, "role": "style", "valType": "number" + }, + "widthsrc": { + "description": "Sets the source reference on plot.ly for width .", + "editType": "none", + "role": "info", + "valType": "string" } + }, + "prefix": { + "arrayOk": true, + "description": "Prefix for cell values.", + "dflt": null, + "editType": "calc", + "role": "style", + "valType": "string" + }, + "prefixsrc": { + "description": "Sets the source reference on plot.ly for prefix .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "role": "object", + "suffix": { + "arrayOk": true, + "description": "Suffix for cell values.", + "dflt": null, + "editType": "calc", + "role": "style", + "valType": "string" + }, + "suffixsrc": { + "description": "Sets the source reference on plot.ly for suffix .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "values": { + "description": "Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", + "dflt": [], + "editType": "calc", + "role": "data", + "valType": "data_array" + }, + "valuessrc": { + "description": "Sets the source reference on plot.ly for values .", + "editType": "none", + "role": "info", + "valType": "string" } }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "hidesurface": { - "description": "Determines whether or not a surface is drawn. For example, set `hidesurface` to *false* `contours.x.show` to *true* and `contours.y.show` to *true* to draw a wire frame plot.", - "dflt": false, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, "hoverinfo": { "arrayOk": true, "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", @@ -35696,86 +41770,6 @@ "role": "info", "valType": "string" }, - "lighting": { - "ambient": { - "description": "Ambient light increases overall color visibility but can wash out the image.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "diffuse": { - "description": "Represents the extent that incident rays are reflected in a range of angles.", - "dflt": 0.8, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "editType": "calc", - "fresnel": { - "description": "Represents the reflectance as a dependency of the viewing angle; e.g. paper is reflective when viewing it from the edge of the paper (almost 90 degrees), causing shine.", - "dflt": 0.2, - "editType": "calc", - "max": 5, - "min": 0, - "role": "style", - "valType": "number" - }, - "role": "object", - "roughness": { - "description": "Alters specular reflection; the rougher the surface, the wider and less contrasty the shine.", - "dflt": 0.5, - "editType": "calc", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" - }, - "specular": { - "description": "Represents the level that incident rays are reflected in a single direction, causing shine.", - "dflt": 0.05, - "editType": "calc", - "max": 2, - "min": 0, - "role": "style", - "valType": "number" - } - }, - "lightposition": { - "editType": "calc", - "role": "object", - "x": { - "description": "Numeric vector, representing the X coordinate for each vertex.", - "dflt": 10, - "editType": "calc", - "max": 100000, - "min": -100000, - "role": "style", - "valType": "number" - }, - "y": { - "description": "Numeric vector, representing the Y coordinate for each vertex.", - "dflt": 10000, - "editType": "calc", - "max": 100000, - "min": -100000, - "role": "style", - "valType": "number" - }, - "z": { - "description": "Numeric vector, representing the Z coordinate for each vertex.", - "dflt": 0, - "editType": "calc", - "max": 100000, - "min": -100000, - "role": "style", - "valType": "number" - } - }, "name": { "description": "Sets the trace name. The trace name appear as the legend item and on hover.", "editType": "style", @@ -35783,27 +41777,19 @@ "valType": "string" }, "opacity": { - "description": "Sets the opacity of the surface.", + "description": "Sets the opacity of the trace.", "dflt": 1, - "editType": "calc", + "editType": "style", "max": 1, "min": 0, "role": "style", "valType": "number" }, - "reversescale": { - "description": "Reverses the colorscale.", - "dflt": false, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", "editType": "calc", - "role": "style", - "valType": "boolean" - }, - "scene": { - "description": "Sets a reference between this trace's 3D coordinate system and a 3D scene. If *scene* (the default value), the (x,y,z) coordinates refer to `layout.scene`. If *scene2*, the (x,y,z) coordinates refer to `layout.scene2`, and so on.", - "dflt": "scene", - "editType": "calc+clearAxisTypes", "role": "info", - "valType": "subplotid" + "valType": "any" }, "showlegend": { "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", @@ -35812,13 +41798,6 @@ "role": "info", "valType": "boolean" }, - "showscale": { - "description": "Determines whether or not a colorbar is displayed for this trace.", - "dflt": true, - "editType": "calc", - "role": "info", - "valType": "boolean" - }, "stream": { "editType": "calc", "maxpoints": { @@ -35840,31 +41819,7 @@ "valType": "string" } }, - "surfacecolor": { - "description": "Sets the surface color values, used for setting a color scale independent of `z`.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "surfacecolorsrc": { - "description": "Sets the source reference on plot.ly for surfacecolor .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "text": { - "description": "Sets the text elements associated with each z value.", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "textsrc": { - "description": "Sets the source reference on plot.ly for text .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "type": "surface", + "type": "table", "uid": { "dflt": "", "editType": "calc", @@ -35882,168 +41837,140 @@ false, "legendonly" ] - }, - "x": { - "description": "Sets the x coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" - }, - "xcalendar": { - "description": "Sets the calendar system to use with `x` date data.", - "dflt": "gregorian", + } + }, + "meta": { + "description": "Table view for detailed data viewing. The data are arranged in a grid of rows and columns. Most styling can be specified for columns, rows or individual cells. Table is using a column-major order, ie. the grid is represented as a vector of column vectors." + } + }, + "violin": { + "attributes": { + "bandwidth": { + "description": "Sets the bandwidth used to compute the kernel density estimate. By default, the bandwidth is determined by Silverman's rule of thumb.", "editType": "calc", + "min": 0, "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] + "valType": "number" }, - "xsrc": { - "description": "Sets the source reference on plot.ly for x .", - "editType": "none", - "role": "info", - "valType": "string" + "box": { + "editType": "plot", + "fillcolor": { + "description": "Sets the inner box plot fill color.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "line": { + "color": { + "description": "Sets the inner box plot bounding line color.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "role": "object", + "width": { + "description": "Sets the inner box plot bounding line width.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object", + "visible": { + "description": "Determines if an miniature box plot is drawn inside the violins. ", + "dflt": false, + "editType": "plot", + "role": "info", + "valType": "boolean" + }, + "width": { + "description": "Sets the width of the inner box plots relative to the violins' width. For example, with 1, the inner box plots are as wide as the violins.", + "dflt": 0.25, + "editType": "plot", + "max": 1, + "min": 0, + "role": "info", + "valType": "number" + } }, - "y": { - "description": "Sets the y coordinates.", - "editType": "calc+clearAxisTypes", + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", "role": "data", "valType": "data_array" }, - "ycalendar": { - "description": "Sets the calendar system to use with `y` date data.", - "dflt": "gregorian", - "editType": "calc", - "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] - }, - "ysrc": { - "description": "Sets the source reference on plot.ly for y .", + "customdatasrc": { + "description": "Sets the source reference on plot.ly for customdata .", "editType": "none", "role": "info", "valType": "string" }, - "z": { - "description": "Sets the z coordinates.", - "editType": "calc+clearAxisTypes", - "role": "data", - "valType": "data_array" + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "style", + "role": "style", + "valType": "color" }, - "zcalendar": { - "description": "Sets the calendar system to use with `z` date data.", - "dflt": "gregorian", - "editType": "calc", + "hoverinfo": { + "arrayOk": true, + "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "x", + "y", + "z", + "text", + "name" + ], "role": "info", - "valType": "enumerated", - "values": [ - "gregorian", - "chinese", - "coptic", - "discworld", - "ethiopian", - "hebrew", - "islamic", - "julian", - "mayan", - "nanakshahi", - "nepali", - "persian", - "jalali", - "taiwan", - "thai", - "ummalqura" - ] + "valType": "flaglist" }, - "zsrc": { - "description": "Sets the source reference on plot.ly for z .", + "hoverinfosrc": { + "description": "Sets the source reference on plot.ly for hoverinfo .", "editType": "none", "role": "info", "valType": "string" - } - }, - "meta": { - "description": "The data the describes the coordinates of the surface is set in `z`. Data in `z` should be a {2D array}. Coordinates in `x` and `y` can either be 1D {arrays} or {2D arrays} (e.g. to graph parametric surfaces). If not provided in `x` and `y`, the x and y coordinates are assumed to be linear starting at 0 with a unit step. The color scale corresponds to the `z` values by default. For custom color scales, use `surfacecolor` which should be a {2D array}, where its bounds can be controlled using `cmin` and `cmax`." - } - }, - "table": { - "attributes": { - "cells": { - "align": { + }, + "hoverlabel": { + "bgcolor": { "arrayOk": true, - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] + "valType": "color" }, - "alignsrc": { - "description": "Sets the source reference on plot.ly for align .", + "bgcolorsrc": { + "description": "Sets the source reference on plot.ly for bgcolor .", "editType": "none", "role": "info", "valType": "string" }, - "editType": "calc", - "fill": { - "color": { - "arrayOk": true, - "description": "Sets the cell fill color. It accepts either a specific color or an array of colors.", - "dflt": "white", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object" + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "role": "style", + "valType": "color" + }, + "bordercolorsrc": { + "description": "Sets the source reference on plot.ly for bordercolor .", + "editType": "none", + "role": "info", + "valType": "string" }, + "editType": "calc", "font": { "color": { "arrayOk": true, - "editType": "calc", + "editType": "none", "role": "style", "valType": "color" }, @@ -36053,12 +41980,12 @@ "role": "info", "valType": "string" }, - "description": "", - "editType": "calc", + "description": "Sets the font used in hover labels.", + "editType": "none", "family": { "arrayOk": true, "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", + "editType": "none", "noBlank": true, "role": "style", "strict": true, @@ -36072,535 +41999,630 @@ }, "role": "object", "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "format": { - "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "formatsrc": { - "description": "Sets the source reference on plot.ly for format .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "height": { - "description": "The height of cells.", - "dflt": 20, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "line": { - "color": { - "arrayOk": true, - "dflt": "grey", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "dflt": 1, - "editType": "calc", + "arrayOk": true, + "editType": "none", + "min": 1, "role": "style", "valType": "number" }, - "widthsrc": { - "description": "Sets the source reference on plot.ly for width .", + "sizesrc": { + "description": "Sets the source reference on plot.ly for size .", "editType": "none", "role": "info", "valType": "string" } }, - "prefix": { + "namelength": { "arrayOk": true, - "description": "Prefix for cell values.", - "dflt": null, - "editType": "calc", - "role": "style", - "valType": "string" - }, - "prefixsrc": { - "description": "Sets the source reference on plot.ly for prefix .", + "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object", - "suffix": { - "arrayOk": true, - "description": "Suffix for cell values.", - "dflt": null, - "editType": "calc", + "min": -1, "role": "style", - "valType": "string" + "valType": "integer" }, - "suffixsrc": { - "description": "Sets the source reference on plot.ly for suffix .", + "namelengthsrc": { + "description": "Sets the source reference on plot.ly for namelength .", "editType": "none", "role": "info", "valType": "string" }, - "values": { - "description": "Cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on plot.ly for values .", - "editType": "none", - "role": "info", - "valType": "string" - } + "role": "object" }, - "columnorder": { - "description": "Specifies the rendered order of the data columns; for example, a value `2` at position `0` means that column index `0` in the data will be rendered as the third column, as columns have an index base of zero.", + "hoveron": { + "description": "Do the hover effects highlight individual violins or sample points or the kernel density estimate or any combination of them?", + "dflt": "violins+points+kde", + "editType": "style", + "extras": [ + "all" + ], + "flags": [ + "violins", + "points", + "kde" + ], + "role": "info", + "valType": "flaglist" + }, + "ids": { + "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", "editType": "calc", "role": "data", "valType": "data_array" }, - "columnordersrc": { - "description": "Sets the source reference on plot.ly for columnorder .", + "idssrc": { + "description": "Sets the source reference on plot.ly for ids .", "editType": "none", "role": "info", "valType": "string" }, - "columnwidth": { - "arrayOk": true, - "description": "The width of columns expressed as a ratio. Columns fill the available width in proportion of their specified column widths.", - "dflt": null, - "editType": "calc", + "jitter": { + "description": "Sets the amount of jitter in the sample points drawn. If *0*, the sample points align along the distribution axis. If *1*, the sample points are drawn in a random jitter of width equal to the width of the violins.", + "editType": "calcIfAutorange", + "max": 1, + "min": 0, "role": "style", "valType": "number" }, - "columnwidthsrc": { - "description": "Sets the source reference on plot.ly for columnwidth .", - "editType": "none", + "legendgroup": { + "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", "role": "info", "valType": "string" }, - "customdata": { - "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "customdatasrc": { - "description": "Sets the source reference on plot.ly for customdata .", - "editType": "none", - "role": "info", - "valType": "string" + "line": { + "color": { + "description": "Sets the color of line bounding the violin(s).", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "plot", + "role": "object", + "width": { + "description": "Sets the width (in px) of line bounding the violin(s).", + "dflt": 2, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } }, - "domain": { - "editType": "calc", + "marker": { + "color": { + "arrayOk": false, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "plot", + "line": { + "color": { + "arrayOk": false, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `cmin` and `cmax` if set.", + "dflt": "#444", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "outliercolor": { + "description": "Sets the border line color of the outlier sample points. Defaults to marker.color", + "editType": "style", + "role": "style", + "valType": "color" + }, + "outlierwidth": { + "description": "Sets the border line width (in px) of the outlier sample points.", + "dflt": 1, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "width": { + "arrayOk": false, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "dflt": 0, + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "opacity": { + "arrayOk": false, + "description": "Sets the marker opacity.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "outliercolor": { + "description": "Sets the color of the outlier sample points.", + "dflt": "rgba(0, 0, 0, 0)", + "editType": "style", + "role": "style", + "valType": "color" + }, "role": "object", - "x": { - "description": "Sets the horizontal domain of this `table` trace (in plot fraction).", - "dflt": [ - 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" + "size": { + "arrayOk": false, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calcIfAutorange", + "min": 0, + "role": "style", + "valType": "number" }, - "y": { - "description": "Sets the vertical domain of this `table` trace (in plot fraction).", - "dflt": [ + "symbol": { + "arrayOk": false, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "plot", + "role": "style", + "valType": "enumerated", + "values": [ 0, - 1 - ], - "editType": "calc", - "items": [ - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - }, - { - "editType": "calc", - "max": 1, - "min": 0, - "valType": "number" - } - ], - "role": "info", - "valType": "info_array" + "circle", + 100, + "circle-open", + 200, + "circle-dot", + 300, + "circle-open-dot", + 1, + "square", + 101, + "square-open", + 201, + "square-dot", + 301, + "square-open-dot", + 2, + "diamond", + 102, + "diamond-open", + 202, + "diamond-dot", + 302, + "diamond-open-dot", + 3, + "cross", + 103, + "cross-open", + 203, + "cross-dot", + 303, + "cross-open-dot", + 4, + "x", + 104, + "x-open", + 204, + "x-dot", + 304, + "x-open-dot", + 5, + "triangle-up", + 105, + "triangle-up-open", + 205, + "triangle-up-dot", + 305, + "triangle-up-open-dot", + 6, + "triangle-down", + 106, + "triangle-down-open", + 206, + "triangle-down-dot", + 306, + "triangle-down-open-dot", + 7, + "triangle-left", + 107, + "triangle-left-open", + 207, + "triangle-left-dot", + 307, + "triangle-left-open-dot", + 8, + "triangle-right", + 108, + "triangle-right-open", + 208, + "triangle-right-dot", + 308, + "triangle-right-open-dot", + 9, + "triangle-ne", + 109, + "triangle-ne-open", + 209, + "triangle-ne-dot", + 309, + "triangle-ne-open-dot", + 10, + "triangle-se", + 110, + "triangle-se-open", + 210, + "triangle-se-dot", + 310, + "triangle-se-open-dot", + 11, + "triangle-sw", + 111, + "triangle-sw-open", + 211, + "triangle-sw-dot", + 311, + "triangle-sw-open-dot", + 12, + "triangle-nw", + 112, + "triangle-nw-open", + 212, + "triangle-nw-dot", + 312, + "triangle-nw-open-dot", + 13, + "pentagon", + 113, + "pentagon-open", + 213, + "pentagon-dot", + 313, + "pentagon-open-dot", + 14, + "hexagon", + 114, + "hexagon-open", + 214, + "hexagon-dot", + 314, + "hexagon-open-dot", + 15, + "hexagon2", + 115, + "hexagon2-open", + 215, + "hexagon2-dot", + 315, + "hexagon2-open-dot", + 16, + "octagon", + 116, + "octagon-open", + 216, + "octagon-dot", + 316, + "octagon-open-dot", + 17, + "star", + 117, + "star-open", + 217, + "star-dot", + 317, + "star-open-dot", + 18, + "hexagram", + 118, + "hexagram-open", + 218, + "hexagram-dot", + 318, + "hexagram-open-dot", + 19, + "star-triangle-up", + 119, + "star-triangle-up-open", + 219, + "star-triangle-up-dot", + 319, + "star-triangle-up-open-dot", + 20, + "star-triangle-down", + 120, + "star-triangle-down-open", + 220, + "star-triangle-down-dot", + 320, + "star-triangle-down-open-dot", + 21, + "star-square", + 121, + "star-square-open", + 221, + "star-square-dot", + 321, + "star-square-open-dot", + 22, + "star-diamond", + 122, + "star-diamond-open", + 222, + "star-diamond-dot", + 322, + "star-diamond-open-dot", + 23, + "diamond-tall", + 123, + "diamond-tall-open", + 223, + "diamond-tall-dot", + 323, + "diamond-tall-open-dot", + 24, + "diamond-wide", + 124, + "diamond-wide-open", + 224, + "diamond-wide-dot", + 324, + "diamond-wide-open-dot", + 25, + "hourglass", + 125, + "hourglass-open", + 26, + "bowtie", + 126, + "bowtie-open", + 27, + "circle-cross", + 127, + "circle-cross-open", + 28, + "circle-x", + 128, + "circle-x-open", + 29, + "square-cross", + 129, + "square-cross-open", + 30, + "square-x", + 130, + "square-x-open", + 31, + "diamond-cross", + 131, + "diamond-cross-open", + 32, + "diamond-x", + 132, + "diamond-x-open", + 33, + "cross-thin", + 133, + "cross-thin-open", + 34, + "x-thin", + 134, + "x-thin-open", + 35, + "asterisk", + 135, + "asterisk-open", + 36, + "hash", + 136, + "hash-open", + 236, + "hash-dot", + 336, + "hash-open-dot", + 37, + "y-up", + 137, + "y-up-open", + 38, + "y-down", + 138, + "y-down-open", + 39, + "y-left", + 139, + "y-left-open", + 40, + "y-right", + 140, + "y-right-open", + 41, + "line-ew", + 141, + "line-ew-open", + 42, + "line-ns", + 142, + "line-ns-open", + 43, + "line-ne", + 143, + "line-ne-open", + 44, + "line-nw", + 144, + "line-nw-open" + ] } }, - "editType": "calc", - "header": { - "align": { - "arrayOk": true, - "description": "Sets the horizontal alignment of the `text` within the box. Has an effect only if `text` spans more two or more lines (i.e. `text` contains one or more
HTML tags) or if an explicit width is set to override the text width.", - "dflt": "center", - "editType": "calc", + "meanline": { + "color": { + "description": "Sets the mean line color.", + "editType": "style", "role": "style", - "valType": "enumerated", - "values": [ - "left", - "center", - "right" - ] - }, - "alignsrc": { - "description": "Sets the source reference on plot.ly for align .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "fill": { - "color": { - "arrayOk": true, - "description": "Sets the cell fill color. It accepts either a specific color or an array of colors.", - "dflt": "white", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object" - }, - "font": { - "color": { - "arrayOk": true, - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "description": "", - "editType": "calc", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "calc", - "noBlank": true, - "role": "style", - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object", - "size": { - "arrayOk": true, - "editType": "calc", - "min": 1, - "role": "style", - "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "format": { - "description": "Sets the cell value formatting rule using d3 formatting mini-language which is similar to those of Python. See https://github.com/d3/d3-format/blob/master/README.md#locale_format", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" + "valType": "color" }, - "formatsrc": { - "description": "Sets the source reference on plot.ly for format .", - "editType": "none", + "editType": "plot", + "role": "object", + "visible": { + "description": "Determines if a line corresponding to the sample's mean is shown inside the violins. If `box.visible` is turned on, the mean line is drawn inside the inner box. Otherwise, the mean line is drawn from one side of the violin to other.", + "dflt": false, + "editType": "plot", "role": "info", - "valType": "string" + "valType": "boolean" }, - "height": { - "description": "The height of cells.", - "dflt": 28, - "editType": "calc", + "width": { + "description": "Sets the mean line width.", + "editType": "style", + "min": 0, "role": "style", "valType": "number" - }, - "line": { - "color": { - "arrayOk": true, - "dflt": "grey", - "editType": "calc", - "role": "style", - "valType": "color" - }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "editType": "calc", - "role": "object", - "width": { - "arrayOk": true, - "dflt": 1, - "editType": "calc", - "role": "style", - "valType": "number" - }, - "widthsrc": { - "description": "Sets the source reference on plot.ly for width .", - "editType": "none", - "role": "info", - "valType": "string" - } - }, - "prefix": { - "arrayOk": true, - "description": "Prefix for cell values.", - "dflt": null, - "editType": "calc", - "role": "style", - "valType": "string" - }, - "prefixsrc": { - "description": "Sets the source reference on plot.ly for prefix .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "role": "object", - "suffix": { - "arrayOk": true, - "description": "Suffix for cell values.", - "dflt": null, - "editType": "calc", - "role": "style", - "valType": "string" - }, - "suffixsrc": { - "description": "Sets the source reference on plot.ly for suffix .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "values": { - "description": "Header cell values. `values[m][n]` represents the value of the `n`th point in column `m`, therefore the `values[m]` vector length for all columns must be the same (longer vectors will be truncated). Each value must be a finite number or a string.", - "dflt": [], - "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "valuessrc": { - "description": "Sets the source reference on plot.ly for values .", - "editType": "none", - "role": "info", - "valType": "string" } }, - "hoverinfo": { - "arrayOk": true, - "description": "Determines which trace information appear on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", - "dflt": "all", - "editType": "none", - "extras": [ - "all", - "none", - "skip" - ], - "flags": [ - "x", - "y", - "z", - "text", - "name" - ], + "name": { + "description": "Sets the trace name. The trace name appear as the legend item and on hover. For box traces, the name will also be used for the position coordinate, if `x` and `x0` (`y` and `y0` if horizontal) are missing and the position axis is categorical", + "editType": "calc+clearAxisTypes", "role": "info", - "valType": "flaglist" + "valType": "string" }, - "hoverinfosrc": { - "description": "Sets the source reference on plot.ly for hoverinfo .", - "editType": "none", + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "orientation": { + "description": "Sets the orientation of the violin(s). If *v* (*h*), the distribution is visualized along the vertical (horizontal).", + "editType": "calc+clearAxisTypes", + "role": "style", + "valType": "enumerated", + "values": [ + "v", + "h" + ] + }, + "pointpos": { + "description": "Sets the position of the sample points in relation to the violins. If *0*, the sample points are places over the center of the violins. Positive (negative) values correspond to positions to the right (left) for vertical violins and above (below) for horizontal violins.", + "editType": "calcIfAutorange", + "max": 2, + "min": -2, + "role": "style", + "valType": "number" + }, + "points": { + "description": "If *outliers*, only the sample points lying outside the whiskers are shown If *suspectedoutliers*, the outlier points are shown and points either less than 4*Q1-3*Q3 or greater than 4*Q3-3*Q1 are highlighted (see `outliercolor`) If *all*, all sample points are shown If *false*, only the violins are shown with no sample points", + "dflt": "outliers", + "editType": "calcIfAutorange", + "role": "style", + "valType": "enumerated", + "values": [ + "all", + "outliers", + "suspectedoutliers", + false + ] + }, + "scalegroup": { + "description": "If there are multiple violins that should be sized according to to some metric (see `scalemode`), link them by providing a non-empty group id here shared by every trace in the same group.", + "dflt": "", + "editType": "calc", "role": "info", "valType": "string" }, - "hoverlabel": { - "bgcolor": { - "arrayOk": true, - "description": "Sets the background color of the hover labels for this trace", - "editType": "none", - "role": "style", - "valType": "color" - }, - "bgcolorsrc": { - "description": "Sets the source reference on plot.ly for bgcolor .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "bordercolor": { - "arrayOk": true, - "description": "Sets the border color of the hover labels for this trace.", - "editType": "none", - "role": "style", - "valType": "color" - }, - "bordercolorsrc": { - "description": "Sets the source reference on plot.ly for bordercolor .", - "editType": "none", - "role": "info", - "valType": "string" - }, + "scalemode": { + "description": "Sets the metric by which the width of each violin is determined.*width* means each violin has the same (max) width*count* means the violins are scaled by the number of sample points makingup each violin.", + "dflt": "width", "editType": "calc", - "font": { + "role": "info", + "valType": "enumerated", + "values": [ + "width", + "count" + ] + }, + "selected": { + "editType": "style", + "marker": { "color": { - "arrayOk": true, - "editType": "none", + "description": "Sets the marker color of selected points.", + "editType": "style", "role": "style", "valType": "color" }, - "colorsrc": { - "description": "Sets the source reference on plot.ly for color .", - "editType": "none", - "role": "info", - "valType": "string" - }, - "description": "Sets the font used in hover labels.", - "editType": "none", - "family": { - "arrayOk": true, - "description": "HTML font family - the typeface that will be applied by the web browser. The web browser will only be able to apply a font if it is available on the system which it operates. Provide multiple font families, separated by commas, to indicate the preference in which to apply fonts if they aren't available on the system. The plotly service (at https://plot.ly or on-premise) generates images on a server, where only a select number of fonts are installed and supported. These include *Arial*, *Balto*, *Courier New*, *Droid Sans*,, *Droid Serif*, *Droid Sans Mono*, *Gravitas One*, *Old Standard TT*, *Open Sans*, *Overpass*, *PT Sans Narrow*, *Raleway*, *Times New Roman*.", - "editType": "none", - "noBlank": true, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "style", + "max": 1, + "min": 0, "role": "style", - "strict": true, - "valType": "string" - }, - "familysrc": { - "description": "Sets the source reference on plot.ly for family .", - "editType": "none", - "role": "info", - "valType": "string" + "valType": "number" }, "role": "object", "size": { - "arrayOk": true, - "editType": "none", - "min": 1, + "description": "Sets the marker size of selected points.", + "editType": "style", + "min": 0, "role": "style", "valType": "number" - }, - "sizesrc": { - "description": "Sets the source reference on plot.ly for size .", - "editType": "none", - "role": "info", - "valType": "string" } }, - "namelength": { - "arrayOk": true, - "description": "Sets the length (in number of characters) of the trace name in the hover labels for this trace. -1 shows the whole name regardless of length. 0-3 shows the first 0-3 characters, and an integer >3 will show the whole name if it is less than that many characters, but if it is longer, will truncate to `namelength - 3` characters and add an ellipsis.", - "editType": "none", - "min": -1, - "role": "style", - "valType": "integer" - }, - "namelengthsrc": { - "description": "Sets the source reference on plot.ly for namelength .", - "editType": "none", - "role": "info", - "valType": "string" - }, "role": "object" }, - "ids": { - "description": "Assigns id labels to each datum. These ids for object constancy of data points during animation.", + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", "editType": "calc", - "role": "data", - "valType": "data_array" - }, - "idssrc": { - "description": "Sets the source reference on plot.ly for ids .", - "editType": "none", "role": "info", - "valType": "string" + "valType": "any" }, - "legendgroup": { - "description": "Sets the legend group for this trace. Traces part of the same legend group hide/show at the same time when toggling legend items.", - "dflt": "", + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, "editType": "style", "role": "info", - "valType": "string" + "valType": "boolean" }, - "name": { - "description": "Sets the trace name. The trace name appear as the legend item and on hover.", - "editType": "style", + "side": { + "description": "Determines on which side of the position value the density function making up one half of a violin is plotted. Useful when comparing two violin traces under *overlay* mode, where one trace has `side` set to *positive* and the other to *negative*.", + "dflt": "both", + "editType": "plot", "role": "info", - "valType": "string" + "valType": "enumerated", + "values": [ + "both", + "positive", + "negative" + ] }, - "opacity": { - "description": "Sets the opacity of the trace.", - "dflt": 1, - "editType": "style", - "max": 1, - "min": 0, - "role": "style", - "valType": "number" + "span": { + "description": "Sets the span in data space for which the density function will be computed. Has an effect only when `spanmode` is set to *manual*.", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "role": "info", + "valType": "info_array" }, - "showlegend": { - "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", - "dflt": true, - "editType": "style", + "spanmode": { + "description": "Sets the method by which the span in data space where the density function will be computed. *soft* means the span goes from the sample's minimum value minus two bandwidths to the sample's maximum value plus two bandwidths. *hard* means the span goes from the sample's minimum to its maximum value. For custom span settings, use mode *manual* and fill in the `span` attribute.", + "dflt": "soft", + "editType": "calc", "role": "info", - "valType": "boolean" + "valType": "enumerated", + "values": [ + "soft", + "hard", + "manual" + ] }, "stream": { "editType": "calc", @@ -36623,13 +42645,56 @@ "valType": "string" } }, - "type": "table", + "text": { + "arrayOk": true, + "description": "Sets the text elements associated with each sample value. If a single string, the same string appears over all the data points. If an array of string, the items are mapped in order to the this trace's (x,y) coordinates. To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "calc", + "role": "info", + "valType": "string" + }, + "textsrc": { + "description": "Sets the source reference on plot.ly for text .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "type": "violin", "uid": { "dflt": "", "editType": "calc", "role": "info", "valType": "string" }, + "unselected": { + "editType": "style", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "style", + "role": "style", + "valType": "color" + }, + "editType": "style", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "style", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "style", + "min": 0, + "role": "style", + "valType": "number" + } + }, + "role": "object" + }, "visible": { "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", "dflt": true, @@ -36641,10 +42706,91 @@ false, "legendonly" ] + }, + "x": { + "description": "Sets the x sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "x0": { + "description": "Sets the x coordinate of the box. See overview for more info.", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, + "xaxis": { + "description": "Sets a reference between this trace's x coordinates and a 2D cartesian x axis. If *x* (the default value), the x coordinates refer to `layout.xaxis`. If *x2*, the x coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "x", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "xsrc": { + "description": "Sets the source reference on plot.ly for x .", + "editType": "none", + "role": "info", + "valType": "string" + }, + "y": { + "description": "Sets the y sample data or coordinates. See overview for more info.", + "editType": "calc+clearAxisTypes", + "role": "data", + "valType": "data_array" + }, + "y0": { + "description": "Sets the y coordinate of the box. See overview for more info.", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "any" + }, + "yaxis": { + "description": "Sets a reference between this trace's y coordinates and a 2D cartesian y axis. If *y* (the default value), the y coordinates refer to `layout.yaxis`. If *y2*, the y coordinates refer to `layout.xaxis2`, and so on.", + "dflt": "y", + "editType": "calc+clearAxisTypes", + "role": "info", + "valType": "subplotid" + }, + "ysrc": { + "description": "Sets the source reference on plot.ly for y .", + "editType": "none", + "role": "info", + "valType": "string" + } + }, + "layoutAttributes": { + "violingap": { + "description": "Sets the gap (in plot fraction) between violins of adjacent location coordinates.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "violingroupgap": { + "description": "Sets the gap (in plot fraction) between violins of the same location coordinate.", + "dflt": 0.3, + "editType": "calc", + "max": 1, + "min": 0, + "role": "style", + "valType": "number" + }, + "violinmode": { + "description": "Determines how violins at the same location coordinate are displayed on the graph. If *group*, the violins are plotted next to one another centered around the shared location. If *overlay*, the violins are plotted over one another, you might need to set *opacity* to see them multiple violins.", + "dflt": "overlay", + "editType": "calc", + "role": "info", + "valType": "enumerated", + "values": [ + "group", + "overlay" + ] } }, "meta": { - "description": "Table view for detailed data viewing. The data are arranged in a grid of rows and columns. Most styling can be specified for columns, rows or individual cells. Table is using a column-major order, ie. the grid is represented as a vector of column vectors." + "description": "In vertical (horizontal) violin plots, statistics are computed using `y` (`x`) values. By supplying an `x` (`y`) array, one violin per distinct x (y) value is drawn If no `x` (`y`) {array} is provided, a single violin is drawn. That violin position is then positioned with with `name` or with `x0` (`y0`) if provided." } } }, @@ -36744,7 +42890,7 @@ "valType": "boolean" }, "operation": { - "description": "Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to value[1]` including both bounds` *()* keeps items inside `value[0]` to value[1]` excluding both bounds` *[)* keeps items inside `value[0]` to value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to value[1]` and equal to both bounds` *)(* keeps items outside `value[0]` to value[1]` *](* keeps items outside `value[0]` to value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values", + "description": "Sets the filter operation. *=* keeps items equal to `value` *!=* keeps items not equal to `value` *<* keeps items less than `value` *<=* keeps items less than or equal to `value` *>* keeps items greater than `value` *>=* keeps items greater than or equal to `value` *[]* keeps items inside `value[0]` to `value[1]` including both bounds *()* keeps items inside `value[0]` to `value[1]` excluding both bounds *[)* keeps items inside `value[0]` to `value[1]` including `value[0]` but excluding `value[1] *(]* keeps items inside `value[0]` to `value[1]` excluding `value[0]` but including `value[1] *][* keeps items outside `value[0]` to `value[1]` and equal to both bounds *)(* keeps items outside `value[0]` to `value[1]` *](* keeps items outside `value[0]` to `value[1]` and equal to `value[0]` *)[* keeps items outside `value[0]` to `value[1]` and equal to `value[1]` *{}* keeps items present in a set of values *}{* keeps items not present in a set of values", "dflt": "=", "editType": "calc", "role": "info", diff --git a/plotly/tests/test_optional/test_figure_factory/__init__.py b/plotly/tests/test_optional/test_figure_factory/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.cpg b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.cpg new file mode 100755 index 00000000000..3ad133c048f --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf new file mode 100755 index 00000000000..2e110609057 Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.dbf differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.prj b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.prj new file mode 100755 index 00000000000..747df588c20 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.prj @@ -0,0 +1 @@ +GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]] \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp new file mode 100755 index 00000000000..45b3f041f32 Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.ea.iso.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.ea.iso.xml new file mode 100755 index 00000000000..2e87ded9295 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.ea.iso.xml @@ -0,0 +1,404 @@ + + + + Feature Catalog for the 2016 Current County and Equivalent 1:500,000 Cartographic Boundary File + + + The Current County and Equivalent at a scale of 1:500,000 + + + cb_2016_county_500k + + + 2017-03 + + + eng + + + utf8 + + + + + + + cb_2016_us_county_500k.shp + + + Current County and Equivalent (national) + + + false + + + + + + STATEFP + + + Current state Federal Information Processing Series (FIPS) code + + + + + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + + + + + + + + + + COUNTYFP + + + Current county Federal Information Processing Series (FIPS) code + + + + + + + National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents + + + + + + + + + + COUNTYNS + + + Current county Geographic Names Information System (GNIS) code + + + + + + + INCITS 446:2008 (Geographic Names Information System (GNIS)), Identifying Attributes for Named Physical and Cultural Geographic Features (Except Roads and Highways) of the United States, Its Territories, Outlying Areas, and Freely Associated Areas, and the Waters of the Same to the Limit of the Twelve-Mile Statutory Zone + + + + + + + + + + + + + U.S. Geological Survey (USGS) + + + resourceProvider + + + + + + + + + + + + + + + + + + AFFGEOID + + + American FactFinder summary level code + geovariant code + '00US' + GEOID + + + + + + + American FactFinder geographic identifier + + + + + + + + + + GEOID + + + County identifier; a concatenation of current state Federal Information Processing Series (FIPS) code and county FIPS code + + + + + + + + The GEOID attribute is a concatenation of the state FIPS code followed by the county FIPS code. No spaces are allowed between the two codes. The state FIPS code is taken from "National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States". The county FIPS code is taken from "National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents". + + + + + + + + + NAME + + + Current county name + + + + + + + National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents + + + + + + + + + + LSAD + + + Current legal/statistical area description code for county + + + + + + + 00 + + + Blank + + + + + + + + 03 + + + City and Borough (suffix) + + + + + + + + 04 + + + Borough (suffix) + + + + + + + + 05 + + + Census Area (suffix) + + + + + + + + 06 + + + County (suffix) + + + + + + + + 07 + + + District (suffix) + + + + + + + + 10 + + + Island (suffix) + + + + + + + + 12 + + + Municipality (suffix) + + + + + + + + 13 + + + Municipio (suffix) + + + + + + + + 15 + + + Parish (suffix) + + + + + + + + 25 + + + city (suffix) + + + + + + + + + + ALAND + + + Current land area (square meters) + + + + + + + + + + + + + + Range Domain Minimum: 0 + Range Domain Maximum: 9,999,999,999,999 + + + + + + + + + AWATER + + + Current water area (square meters) + + + + + + + + + + + + + + Range Domain Minimum: 0 + Range Domain Maximum: 9,999,999,999,999 + + + + + + + + \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.iso.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.iso.xml new file mode 100755 index 00000000000..6b51576337c --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.iso.xml @@ -0,0 +1,539 @@ + + + + cb_2016_us_county_500k.shp.iso.xml + + + eng + + + UTF-8 + + + +dataset + + + + + 2017-03 + + + ISO 19115 Geographic Information - Metadata + + + 2009-02-15 + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_county_500k.zip + + + + + + + + + complex + + + 3233 + + + + + + + + + + + + + INCITS (formerly FIPS) codes + + + + + + + + + + + + 2016 Cartographic Boundary File, Current County and Equivalent for United States, 1:500,000 + + + + + + 2017-03 + + + publication + + + + + + + + + + + + The 2016 cartographic boundary shapefiles are simplified representations of selected geographic areas from the U.S. Census Bureau's Master Address File / Topologically Integrated Geographic Encoding and Referencing (MAF/TIGER) Database (MTDB). These boundary files are specifically designed for small-scale thematic mapping. When possible, generalization is performed with the intent to maintain the hierarchical relationships among geographies and to maintain the alignment of geographies within a file set for a given year. Geographic areas may not align with the same areas from another year. Some geographies are available as nation-based files while others are available only as state-based files. + +The primary legal divisions of most states are termed counties. In Louisiana, these divisions are known as parishes. In Alaska, which has no counties, the equivalent entities are the organized boroughs, city and boroughs, municipalities, and for the unorganized area, census areas. The latter are delineated cooperatively for statistical purposes by the State of Alaska and the Census Bureau. In four states (Maryland, Missouri, Nevada, and Virginia), there are one or more incorporated places that are independent of any county organization and thus constitute primary divisions of their states. These incorporated places are known as independent cities and are treated as equivalent entities for purposes of data presentation. The District of Columbia and Guam have no primary divisions, and each area is considered an equivalent entity for purposes of data presentation. The Census Bureau treats the following entities as equivalents of counties for purposes of data presentation: Municipios in Puerto Rico, Districts and Islands in American Samoa, Municipalities in the Commonwealth of the Northern Mariana Islands, and Islands in the U.S. Virgin Islands. The entire area of the United States, Puerto Rico, and the Island Areas is covered by counties or equivalent entities. + +The generalized boundaries for counties and equivalent entities are based on those as of January 1, 2016, primarily as reported through the Census Bureau's Boundary and Annexation Survey (BAS). + + + These files were specifically created to support small-scale thematic mapping. To improve the appearance of shapes at small scales, areas are represented with fewer vertices than detailed TIGER/Line Shapefiles. Cartographic boundary files take up less disk space than their ungeneralized counterparts. Cartographic boundary files take less time to render on screen than TIGER/Line Shapefiles. You can join this file with table data downloaded from American FactFinder by using the AFFGEOID field in the cartographic boundary file. If detailed boundaries are required, please use the TIGER/Line Shapefiles instead of the generalized cartographic boundary files. + + + + completed + + + + + + + + notPlanned + + + + + + + + Boundaries + + + theme + + + + + ISO 19115 Topic Categories + + + + + + + + + + 2016 + + + SHP + + + Borough + + + Cartographic Boundary + + + Census Area + + + City + + + City and Borough + + + County + + + County equivalent + + + District + + + Generalized + + + Independent City + + + Island + + + Municipality + + + Municipio + + + Parish + + + State + + + theme + + + + + None + + + + + + + + + + United States + + + US + + + place + + + + + ISO 3166 Codes for the representation of names of countries and their subdivisions + + + + + + + + + + + + otherRestrictions + + + + + + Access Constraints: None + + + Use Constraints:The intended display scale for this file is 1:500,000. This file should not be displayed at scales larger than 1:500,000. + +These products are free to use in a product or publication, however acknowledgement must be given to the U.S. Census Bureau as the source. The boundary information is for visual display at appropriate small scales only. Cartographic boundary files should not be used for geographic analysis including area or perimeter calculation. Files should not be used for geocoding addresses. Files should not be used for determining precise geographic area relationships. + + + + + + + vector + + + + + + + 500000 + + + + + + + eng + + + UTF-8 + + + boundaries + + + The cartographic boundary files contain geographic data only and do not include display mapping software or statistical data. For information on how to use cartographic boundary file data with specific software package users shall contact the company that produced the software. + + + + + + + -179.148909 + + + 179.77847 + + + -14.548699 + + + 71.365162 + + + + + + + + publication date + 2017-03 + 2017-03 + + + + + + + + + + + + + true + + + + + Feature Catalog for the 2016 Current County and Equivalent 1:500,000 Cartographic Boundary File + + + + + + + + + + + https://meta.geo.census.gov/data/existing/decennial/GEO/CPMB/boundary/2016cb/county_500k/2016_county_500k.ea.iso.xml + + + + + + + + + + + SHP + + + + PK-ZIP, version 1.93A or higher + + + + + + + HTML + + + + + + + + + + + The online cartographic boundary files may be downloaded without charge. + + + To obtain more information about ordering Cartographic Boundary Files visit https://www.census.gov/geo/www/tiger. + + + + + + + + + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_county_500k.zip + + + Shapefile Zip File + + + + + + + + + + + https://www.census.gov/geo/maps-data/data/tiger-cart-boundary.html + + + Cartographic Boundary Shapefiles + + + Simplified representations of selected geographic areas from the Census Bureau's MAF/TIGER geographic database + + + + + + + + + + + + + dataset + + + + + + + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + + + + + + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + + + + + + The Census Bureau performed automated tests to ensure logical consistency of the source database. Segments making up the outer and inner boundaries of a polygon tie end-to-end to completely enclose the area. All polygons were tested for closure. The Census Bureau uses its internally developed geographic update system to enhance and modify spatial and attribute data in the Census MAF/TIGER database. Standard geographic codes, such as INCITS (formerly FIPS) codes for states, counties, municipalities, county subdivisions, places, American Indian/Alaska Native/Native Hawaiian areas, and congressional districts are used when encoding spatial entities. The Census Bureau performed spatial data tests for logical consistency of the codes during the compilation of the original Census MAF/TIGER database files. Feature attribute information has been examined but has not been fully tested for consistency. + +For the cartographic boundary files, the Point and Vector Object Count for the G-polygon SDTS Point and Vector Object Type reflects the number of records in the file's data table. For multi-polygon features, only one attribute record exists for each multi-polygon rather than one attribute record per individual G-polygon component of the multi-polygon feature. Cartographic Boundary File multi-polygons are an exception to the G-polygon object type classification. Therefore, when multi-polygons exist in a file, the object count will be less than the actual number of G-polygons. + + + + + + + + + + Spatial data were extracted from the MAF/TIGER database and processed through a U.S. Census Bureau batch generalization system. + + + 2017-03-01T00:00:00 + + + + + Geo-spatial Relational Database + + + + + Census MAF/TIGER database + + + MAF/TIGER + + + + + 2016-05 + + + + creation + + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + originator + + + + + + Source Contribution: All spatial and feature data + + + + + + + + + + + + + + + + notPlanned + + + + This was transformed from the Census Metadata Import Format + + + + + \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.xml new file mode 100755 index 00000000000..79721520dbc --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shp.xml @@ -0,0 +1,410 @@ + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Cartographic Products and Services Branch + 201703 + 2016 Cartographic Boundary File, Current County and Equivalent for United States, 1:500,000 + vector digital data + + Cartographic Boundary Files + 2016 + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_county_500k.zip + + + + The 2016 cartographic boundary shapefiles are simplified representations of selected geographic areas from the U.S. Census Bureau's Master Address File / Topologically Integrated Geographic Encoding and Referencing (MAF/TIGER) Database (MTDB). These boundary files are specifically designed for small-scale thematic mapping. When possible, generalization is performed with the intent to maintain the hierarchical relationships among geographies and to maintain the alignment of geographies within a file set for a given year. Geographic areas may not align with the same areas from another year. Some geographies are available as nation-based files while others are available only as state-based files. + +The primary legal divisions of most states are termed counties. In Louisiana, these divisions are known as parishes. In Alaska, which has no counties, the equivalent entities are the organized boroughs, city and boroughs, municipalities, and for the unorganized area, census areas. The latter are delineated cooperatively for statistical purposes by the State of Alaska and the Census Bureau. In four states (Maryland, Missouri, Nevada, and Virginia), there are one or more incorporated places that are independent of any county organization and thus constitute primary divisions of their states. These incorporated places are known as independent cities and are treated as equivalent entities for purposes of data presentation. The District of Columbia and Guam have no primary divisions, and each area is considered an equivalent entity for purposes of data presentation. The Census Bureau treats the following entities as equivalents of counties for purposes of data presentation: Municipios in Puerto Rico, Districts and Islands in American Samoa, Municipalities in the Commonwealth of the Northern Mariana Islands, and Islands in the U.S. Virgin Islands. The entire area of the United States, Puerto Rico, and the Island Areas is covered by counties or equivalent entities. + +The generalized boundaries for counties and equivalent entities are based on those as of January 1, 2016, primarily as reported through the Census Bureau's Boundary and Annexation Survey (BAS). + These files were specifically created to support small-scale thematic mapping. To improve the appearance of shapes at small scales, areas are represented with fewer vertices than detailed TIGER/Line Shapefiles. Cartographic boundary files take up less disk space than their ungeneralized counterparts. Cartographic boundary files take less time to render on screen than TIGER/Line Shapefiles. You can join this file with table data downloaded from American FactFinder by using the AFFGEOID field in the cartographic boundary file. If detailed boundaries are required, please use the TIGER/Line Shapefiles instead of the generalized cartographic boundary files. + + + + + 201703 + 201703 + + + publication date + + + Complete + None planned. No changes or updates will be made to this version of the cartographic boundary files. New versions of the cartographic boundary files will be produced on an annual release schedule. Types of geography released may vary from year to year. + + + + -179.148909 + 179.77847 + 71.365162 + -14.548699 + + + + + ISO 19115 Topic Categories + Boundaries + + + None + 2016 + SHP + Borough + Cartographic Boundary + Census Area + City + City and Borough + County + County equivalent + District + Generalized + Independent City + Island + Municipality + Municipio + Parish + State + + + ISO 3166 Codes for the representation of names of countries and their subdivisions + United States + US + + + None + The intended display scale for this file is 1:500,000. This file should not be displayed at scales larger than 1:500,000. + +These products are free to use in a product or publication, however acknowledgement must be given to the U.S. Census Bureau as the source. The boundary information is for visual display at appropriate small scales only. Cartographic boundary files should not be used for geographic analysis including area or perimeter calculation. Files should not be used for geocoding addresses. Files should not be used for determining precise geographic area relationships. + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+
+ + + Accurate against American National Standards Institute (ANSI) Publication INCITS 446-2008 (Geographic Names Information System (GNIS)) at the 100% level for the codes and base names present in the file. The remaining attribute information has been examined but has not been fully tested for accuracy. + + The Census Bureau performed automated tests to ensure logical consistency of the source database. Segments making up the outer and inner boundaries of a polygon tie end-to-end to completely enclose the area. All polygons were tested for closure. The Census Bureau uses its internally developed geographic update system to enhance and modify spatial and attribute data in the Census MAF/TIGER database. Standard geographic codes, such as INCITS (formerly FIPS) codes for states, counties, municipalities, county subdivisions, places, American Indian/Alaska Native/Native Hawaiian areas, and congressional districts are used when encoding spatial entities. The Census Bureau performed spatial data tests for logical consistency of the codes during the compilation of the original Census MAF/TIGER database files. Feature attribute information has been examined but has not been fully tested for consistency. + +For the cartographic boundary files, the Point and Vector Object Count for the G-polygon SDTS Point and Vector Object Type reflects the number of records in the file's data table. For multi-polygon features, only one attribute record exists for each multi-polygon rather than one attribute record per individual G-polygon component of the multi-polygon feature. Cartographic Boundary File multi-polygons are an exception to the G-polygon object type classification. Therefore, when multi-polygons exist in a file, the object count will be less than the actual number of G-polygons. + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + Data are not accurate. Data are generalized representations of geographic boundaries at 1:500,000. + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + Unpublished material + Census MAF/TIGER database + + + Geo-spatial Relational Database + + + + 201506 + 201605 + + + The dates describe the effective date of 2016 cartographic boundaries. + + MAF/TIGER + All spatial and feature data + + + Spatial data were extracted from the MAF/TIGER database and processed through a U.S. Census Bureau batch generalization system. + MAF/TIGER + 201703 + + + + + INCITS (formerly FIPS) codes + Vector + + + G-polygon + 3233 + + + + + + + 0.000458 + 0.000458 + Decimal degrees + + + North American Datum of 1983 + Geodetic Reference System 80 + 6378137.000000 + 298.257222 + + + + + + + cb_2016_us_county_500k.shp + Current County and Equivalent (national) + U.S. Census Bureau + + + STATEFP + Current state Federal Information Processing Series (FIPS) code + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + U.S. Census Bureau + + + + + COUNTYFP + Current county Federal Information Processing Series (FIPS) code + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents + U.S. Census Bureau + + + + + COUNTYNS + Current county Geographic Names Information System (GNIS) code + U.S. Census Bureau + + + INCITS 446:2008 (Geographic Names Information System (GNIS)), Identifying Attributes for Named Physical and Cultural Geographic Features (Except Roads and Highways) of the United States, Its Territories, Outlying Areas, and Freely Associated Areas, and the Waters of the Same to the Limit of the Twelve-Mile Statutory Zone + U.S. Geological Survey (USGS) + + + + + AFFGEOID + American FactFinder summary level code + geovariant code + '00US' + GEOID + U.S. Census Bureau + + + American FactFinder geographic identifier + U.S. Census Bureau + + + + + GEOID + County identifier; a concatenation of current state Federal Information Processing Series (FIPS) code and county FIPS code + U.S. Census Bureau + + The GEOID attribute is a concatenation of the state FIPS code followed by the county FIPS code. No spaces are allowed between the two codes. The state FIPS code is taken from "National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States". The county FIPS code is taken from "National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents". + + + + NAME + Current county name + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 31-2009), Federal Information Processing Series (FIPS) - Counties/County Equivalents + U.S. Census Bureau + + + + + LSAD + Current legal/statistical area description code for county + U.S. Census Bureau + + + 00 + Blank + U.S. Census Bureau + + + + + 03 + City and Borough (suffix) + U.S. Census Bureau + + + + + 04 + Borough (suffix) + U.S. Census Bureau + + + + + 05 + Census Area (suffix) + U.S. Census Bureau + + + + + 06 + County (suffix) + U.S. Census Bureau + + + + + 07 + District (suffix) + U.S. Census Bureau + + + + + 10 + Island (suffix) + U.S. Census Bureau + + + + + 12 + Municipality (suffix) + U.S. Census Bureau + + + + + 13 + Municipio (suffix) + U.S. Census Bureau + + + + + 15 + Parish (suffix) + U.S. Census Bureau + + + + + 25 + city (suffix) + U.S. Census Bureau + + + + + ALAND + Current land area (square meters) + U.S. Census Bureau + + + 0 + 9,999,999,999,999 + square meters + + + + + AWATER + Current water area (square meters) + U.S. Census Bureau + + + 0 + 9,999,999,999,999 + square meters + + + + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+ No warranty, expressed or implied is made with regard to the accuracy of these data, and no liability is assumed by the U.S. Government in general or the U.S. Census Bureau in specific as to the spatial or attribute accuracy of the data. The act of distribution shall not constitute any such warranty and no responsibility is assumed by the U.S. government in the use of these files. The boundary information is for small-scale mapping purposes only; boundary depiction and designation for small-scale mapping purposes do not constitute a determination of jurisdictional authority or rights of ownership or entitlement and they are not legal land descriptions. + + + + SHP + PK-ZIP, version 1.93A or higher + + + + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_county_500k.zip + + + + + + The online cartographic boundary files may be downloaded without charge. + To obtain more information about ordering Cartographic Boundary Files visit https://www.census.gov/geo/www/tiger. + + The cartographic boundary files contain geographic data only and do not include display mapping software or statistical data. For information on how to use cartographic boundary file data with specific software package users shall contact the company that produced the software. +
+ + 201703 + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+ Content Standard for Digital Geospatial Metadata + FGDC-STD-001-1998 +
+
\ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx new file mode 100755 index 00000000000..715e770c755 Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_county_500k/cb_2016_us_county_500k.shx differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.cpg b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.cpg new file mode 100755 index 00000000000..3ad133c048f --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf new file mode 100755 index 00000000000..c3e3b13e212 Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.dbf differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.prj b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.prj new file mode 100755 index 00000000000..747df588c20 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.prj @@ -0,0 +1 @@ +GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]] \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp new file mode 100755 index 00000000000..f2a32cd6a2f Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.ea.iso.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.ea.iso.xml new file mode 100755 index 00000000000..e6da8b1f875 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.ea.iso.xml @@ -0,0 +1,335 @@ + + + + Feature Catalog for the 2016 Current State and Equivalent 1:500,000 Cartographic Boundary File + + + The Current State and Equivalent at a scale of 1:500,000 + + + cb_2016_state_500k + + + 2017-03 + + + eng + + + utf8 + + + + + + + cb_2016_us_state_500k.shp + + + Current State and Equivalent (national) + + + false + + + + + + STATEFP + + + Current state Federal Information Processing Series (FIPS) code + + + + + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + + + + + + + + + + STATENS + + + Current state Geographic Names Information System (GNIS) code + + + + + + + INCITS 446:2008 (Geographic Names Information System (GNIS)), Identifying Attributes for Named Physical and Cultural Geographic Features (Except Roads and Highways) of the United States, Its Territories, Outlying Areas, and Freely Associated Areas, and the Waters of the Same to the Limit of the Twelve-Mile Statutory Zone + + + + + + + + + + + + + U.S. Geological Survey (USGS) + + + resourceProvider + + + + + + + + + + + + + + + + + + AFFGEOID + + + American FactFinder summary level code + geovariant code + '00US' + GEOID + + + + + + + American FactFinder geographic identifier + + + + + + + + + + GEOID + + + State identifier; state FIPS code + + + + + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + + + + + + + + + + STUSPS + + + Current United States Postal Service state abbreviation + + + + + + + + + + + + + + U.S. Postal Service + + + resourceProvider + + + + + + + + + + + + + + Publication 28 - Postal Addressing Standards + + + + + + + + + + + + + U.S. Postal Service + + + resourceProvider + + + + + + + + + + + + + + + + + + NAME + + + Current State name + + + + + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + + + + + + + + + + LSAD + + + Current legal/statistical area description code for state + + + + + + + 00 + + + Blank + + + + + + + + + + ALAND + + + Current land area (square meters) + + + + + + + + + + + + + + Range Domain Minimum: 0 + Range Domain Maximum: 9,999,999,999,999 + + + + + + + + + AWATER + + + Current water area (square meters) + + + + + + + + + + + + + + Range Domain Minimum: 0 + Range Domain Maximum: 9,999,999,999,999 + + + + + + + + \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.iso.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.iso.xml new file mode 100755 index 00000000000..4c9ba192b0e --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.iso.xml @@ -0,0 +1,501 @@ + + + + cb_2016_us_state_500k.shp.iso.xml + + + eng + + + UTF-8 + + + +dataset + + + + + 2017-03 + + + ISO 19115 Geographic Information - Metadata + + + 2009-02-15 + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_state_500k.zip + + + + + + + + + complex + + + 56 + + + + + + + + + + + + + INCITS (formerly FIPS) codes + + + + + + + + + + + + 2016 Cartographic Boundary File, Current State and Equivalent for United States, 1:500,000 + + + + + + 2017-03 + + + publication + + + + + + + + + + + + The 2016 cartographic boundary shapefiles are simplified representations of selected geographic areas from the U.S. Census Bureau's Master Address File / Topologically Integrated Geographic Encoding and Referencing (MAF/TIGER) Database (MTDB). These boundary files are specifically designed for small-scale thematic mapping. When possible, generalization is performed with the intent to maintain the hierarchical relationships among geographies and to maintain the alignment of geographies within a file set for a given year. Geographic areas may not align with the same areas from another year. Some geographies are available as nation-based files while others are available only as state-based files. + +States and equivalent entities are the primary governmental divisions of the United States. In addition to the fifty states, the Census Bureau treats the District of Columbia, Puerto Rico, and each of the Island Areas (American Samoa, the Commonwealth of the Northern Mariana Islands, Guam, and the U.S. Virgin Islands) as the statistical equivalents of states for the purpose of data presentation. + + + These files were specifically created to support small-scale thematic mapping. To improve the appearance of shapes at small scales, areas are represented with fewer vertices than detailed TIGER/Line Shapefiles. Cartographic boundary files take up less disk space than their ungeneralized counterparts. Cartographic boundary files take less time to render on screen than TIGER/Line Shapefiles. You can join this file with table data downloaded from American FactFinder by using the AFFGEOID field in the cartographic boundary file. If detailed boundaries are required, please use the TIGER/Line Shapefiles instead of the generalized cartographic boundary files. + + + + completed + + + + + + + + notPlanned + + + + + + + + Boundaries + + + theme + + + + + ISO 19115 Topic Categories + + + + + + + + + + 2016 + + + SHP + + + Cartographic Boundary + + + Generalized + + + State + + + theme + + + + + None + + + + + + + + + + United States + + + US + + + place + + + + + ISO 3166 Codes for the representation of names of countries and their subdivisions + + + + + + + + + + + + otherRestrictions + + + + + + Access Constraints: None + + + Use Constraints:The intended display scale for this file is 1:500,000. This file should not be displayed at scales larger than 1:500,000. + +These products are free to use in a product or publication, however acknowledgement must be given to the U.S. Census Bureau as the source. The boundary information is for visual display at appropriate small scales only. Cartographic boundary files should not be used for geographic analysis including area or perimeter calculation. Files should not be used for geocoding addresses. Files should not be used for determining precise geographic area relationships. + + + + + + + vector + + + + + + + 500000 + + + + + + + eng + + + UTF-8 + + + boundaries + + + The cartographic boundary files contain geographic data only and do not include display mapping software or statistical data. For information on how to use cartographic boundary file data with specific software package users shall contact the company that produced the software. + + + + + + + -179.148909 + + + 179.77847 + + + -14.548699 + + + 71.365162 + + + + + + + + publication date + 2017-03 + 2017-03 + + + + + + + + + + + + + true + + + + + Feature Catalog for the 2016 Current State and Equivalent 1:500,000 Cartographic Boundary File + + + + + + + + + + + https://meta.geo.census.gov/data/existing/decennial/GEO/CPMB/boundary/2016cb/state_500k/2016_state_500k.ea.iso.xml + + + + + + + + + + + SHP + + + + PK-ZIP, version 1.93A or higher + + + + + + + HTML + + + + + + + + + + + The online cartographic boundary files may be downloaded without charge. + + + To obtain more information about ordering Cartographic Boundary Files visit https://www.census.gov/geo/www/tiger. + + + + + + + + + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_state_500k.zip + + + Shapefile Zip File + + + + + + + + + + + https://www.census.gov/geo/maps-data/data/tiger-cart-boundary.html + + + Cartographic Boundary Shapefiles + + + Simplified representations of selected geographic areas from the Census Bureau's MAF/TIGER geographic database + + + + + + + + + + + + + dataset + + + + + + + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + + + + + + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + + + + + + The Census Bureau performed automated tests to ensure logical consistency of the source database. Segments making up the outer and inner boundaries of a polygon tie end-to-end to completely enclose the area. All polygons were tested for closure. The Census Bureau uses its internally developed geographic update system to enhance and modify spatial and attribute data in the Census MAF/TIGER database. Standard geographic codes, such as INCITS (formerly FIPS) codes for states, counties, municipalities, county subdivisions, places, American Indian/Alaska Native/Native Hawaiian areas, and congressional districts are used when encoding spatial entities. The Census Bureau performed spatial data tests for logical consistency of the codes during the compilation of the original Census MAF/TIGER database files. Feature attribute information has been examined but has not been fully tested for consistency. + +For the cartographic boundary files, the Point and Vector Object Count for the G-polygon SDTS Point and Vector Object Type reflects the number of records in the file's data table. For multi-polygon features, only one attribute record exists for each multi-polygon rather than one attribute record per individual G-polygon component of the multi-polygon feature. Cartographic Boundary File multi-polygons are an exception to the G-polygon object type classification. Therefore, when multi-polygons exist in a file, the object count will be less than the actual number of G-polygons. + + + + + + + + + + Spatial data were extracted from the MAF/TIGER database and processed through a U.S. Census Bureau batch generalization system. + + + 2017-03-01T00:00:00 + + + + + Geo-spatial Relational Database + + + + + Census MAF/TIGER database + + + MAF/TIGER + + + + + 2016-05 + + + + creation + + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + originator + + + + + + Source Contribution: All spatial and feature data + + + + + + + + + + + + + + + + notPlanned + + + + This was transformed from the Census Metadata Import Format + + + + + \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.xml new file mode 100755 index 00000000000..a8907fcdf73 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shp.xml @@ -0,0 +1,329 @@ + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Cartographic Products and Services Branch + 201703 + 2016 Cartographic Boundary File, Current State and Equivalent for United States, 1:500,000 + vector digital data + + Cartographic Boundary Files + 2016 + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_state_500k.zip + + + + The 2016 cartographic boundary shapefiles are simplified representations of selected geographic areas from the U.S. Census Bureau's Master Address File / Topologically Integrated Geographic Encoding and Referencing (MAF/TIGER) Database (MTDB). These boundary files are specifically designed for small-scale thematic mapping. When possible, generalization is performed with the intent to maintain the hierarchical relationships among geographies and to maintain the alignment of geographies within a file set for a given year. Geographic areas may not align with the same areas from another year. Some geographies are available as nation-based files while others are available only as state-based files. + +States and equivalent entities are the primary governmental divisions of the United States. In addition to the fifty states, the Census Bureau treats the District of Columbia, Puerto Rico, and each of the Island Areas (American Samoa, the Commonwealth of the Northern Mariana Islands, Guam, and the U.S. Virgin Islands) as the statistical equivalents of states for the purpose of data presentation. + These files were specifically created to support small-scale thematic mapping. To improve the appearance of shapes at small scales, areas are represented with fewer vertices than detailed TIGER/Line Shapefiles. Cartographic boundary files take up less disk space than their ungeneralized counterparts. Cartographic boundary files take less time to render on screen than TIGER/Line Shapefiles. You can join this file with table data downloaded from American FactFinder by using the AFFGEOID field in the cartographic boundary file. If detailed boundaries are required, please use the TIGER/Line Shapefiles instead of the generalized cartographic boundary files. + + + + + 201703 + 201703 + + + publication date + + + Complete + None planned. No changes or updates will be made to this version of the cartographic boundary files. New versions of the cartographic boundary files will be produced on an annual release schedule. Types of geography released may vary from year to year. + + + + -179.148909 + 179.77847 + 71.365162 + -14.548699 + + + + + ISO 19115 Topic Categories + Boundaries + + + None + 2016 + SHP + Cartographic Boundary + Generalized + State + + + ISO 3166 Codes for the representation of names of countries and their subdivisions + United States + US + + + None + The intended display scale for this file is 1:500,000. This file should not be displayed at scales larger than 1:500,000. + +These products are free to use in a product or publication, however acknowledgement must be given to the U.S. Census Bureau as the source. The boundary information is for visual display at appropriate small scales only. Cartographic boundary files should not be used for geographic analysis including area or perimeter calculation. Files should not be used for geocoding addresses. Files should not be used for determining precise geographic area relationships. + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+
+ + + Accurate against American National Standards Institute (ANSI) Publication INCITS 446-2008 (Geographic Names Information System (GNIS)) at the 100% level for the codes and base names present in the file. The remaining attribute information has been examined but has not been fully tested for accuracy. + + The Census Bureau performed automated tests to ensure logical consistency of the source database. Segments making up the outer and inner boundaries of a polygon tie end-to-end to completely enclose the area. All polygons were tested for closure. The Census Bureau uses its internally developed geographic update system to enhance and modify spatial and attribute data in the Census MAF/TIGER database. Standard geographic codes, such as INCITS (formerly FIPS) codes for states, counties, municipalities, county subdivisions, places, American Indian/Alaska Native/Native Hawaiian areas, and congressional districts are used when encoding spatial entities. The Census Bureau performed spatial data tests for logical consistency of the codes during the compilation of the original Census MAF/TIGER database files. Feature attribute information has been examined but has not been fully tested for consistency. + +For the cartographic boundary files, the Point and Vector Object Count for the G-polygon SDTS Point and Vector Object Type reflects the number of records in the file's data table. For multi-polygon features, only one attribute record exists for each multi-polygon rather than one attribute record per individual G-polygon component of the multi-polygon feature. Cartographic Boundary File multi-polygons are an exception to the G-polygon object type classification. Therefore, when multi-polygons exist in a file, the object count will be less than the actual number of G-polygons. + The cartographic boundary files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small geographic areas, holes, or discontiguous parts of areas may not be included in generalized files if they are not visible at the target scale. + + + Data are not accurate. Data are generalized representations of geographic boundaries at 1:500,000. + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + Unpublished material + Census MAF/TIGER database + + + Geo-spatial Relational Database + + + + 201506 + 201605 + + + The dates describe the effective date of 2016 cartographic boundaries. + + MAF/TIGER + All spatial and feature data + + + Spatial data were extracted from the MAF/TIGER database and processed through a U.S. Census Bureau batch generalization system. + MAF/TIGER + 201703 + + + + + INCITS (formerly FIPS) codes + Vector + + + G-polygon + 56 + + + + + + + 0.000458 + 0.000458 + Decimal degrees + + + North American Datum of 1983 + Geodetic Reference System 80 + 6378137.000000 + 298.257222 + + + + + + + cb_2016_us_state_500k.shp + Current State and Equivalent (national) + U.S. Census Bureau + + + STATEFP + Current state Federal Information Processing Series (FIPS) code + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + U.S. Census Bureau + + + + + STATENS + Current state Geographic Names Information System (GNIS) code + U.S. Census Bureau + + + INCITS 446:2008 (Geographic Names Information System (GNIS)), Identifying Attributes for Named Physical and Cultural Geographic Features (Except Roads and Highways) of the United States, Its Territories, Outlying Areas, and Freely Associated Areas, and the Waters of the Same to the Limit of the Twelve-Mile Statutory Zone + U.S. Geological Survey (USGS) + + + + + AFFGEOID + American FactFinder summary level code + geovariant code + '00US' + GEOID + U.S. Census Bureau + + + American FactFinder geographic identifier + U.S. Census Bureau + + + + + GEOID + State identifier; state FIPS code + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + U.S. Census Bureau + + + + + STUSPS + Current United States Postal Service state abbreviation + U.S. Postal Service + + + Publication 28 - Postal Addressing Standards + U.S. Postal Service + + + + + NAME + Current State name + U.S. Census Bureau + + + National Standard Codes (ANSI INCITS 38-2009), Federal Information Processing Series (FIPS) - States/State Equivalents + U.S. Census Bureau + + + + + LSAD + Current legal/statistical area description code for state + U.S. Census Bureau + + + 00 + Blank + U.S. Census Bureau + + + + + ALAND + Current land area (square meters) + U.S. Census Bureau + + + 0 + 9,999,999,999,999 + square meters + + + + + AWATER + Current water area (square meters) + U.S. Census Bureau + + + 0 + 9,999,999,999,999 + square meters + + + + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+ No warranty, expressed or implied is made with regard to the accuracy of these data, and no liability is assumed by the U.S. Government in general or the U.S. Census Bureau in specific as to the spatial or attribute accuracy of the data. The act of distribution shall not constitute any such warranty and no responsibility is assumed by the U.S. government in the use of these files. The boundary information is for small-scale mapping purposes only; boundary depiction and designation for small-scale mapping purposes do not constitute a determination of jurisdictional authority or rights of ownership or entitlement and they are not legal land descriptions. + + + + SHP + PK-ZIP, version 1.93A or higher + + + + + + https://www2.census.gov/geo/tiger/GENZ2016/shp/cb_2016_us_state_500k.zip + + + + + + The online cartographic boundary files may be downloaded without charge. + To obtain more information about ordering Cartographic Boundary Files visit https://www.census.gov/geo/www/tiger. + + The cartographic boundary files contain geographic data only and do not include display mapping software or statistical data. For information on how to use cartographic boundary file data with specific software package users shall contact the company that produced the software. +
+ + 201703 + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division, Geographic Customer Services Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+ Content Standard for Digital Geospatial Metadata + FGDC-STD-001-1998 +
+
\ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx new file mode 100755 index 00000000000..95347eb02db Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/cb_2016_us_state_500k/cb_2016_us_state_500k.shx differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf new file mode 100755 index 00000000000..8397f541eca Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.dbf differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.prj b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.prj new file mode 100755 index 00000000000..747df588c20 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.prj @@ -0,0 +1 @@ +GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137,298.257222101]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]] \ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp new file mode 100755 index 00000000000..a1177e7b3ca Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shp differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx new file mode 100755 index 00000000000..85675d9254e Binary files /dev/null and b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.shx differ diff --git a/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.xml b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.xml new file mode 100644 index 00000000000..be10e64c473 --- /dev/null +++ b/plotly/tests/test_optional/test_figure_factory/plotly/package_data/data/gz_2010_us_050_00_500k/gz_2010_us_050_00_500k.xml @@ -0,0 +1,229 @@ + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division/Cartographic Products Branch + 2010 + 2010 Cartographic Boundary File, State-County for United States, 1:500,000 + vector digital data + + 2010 Census + Cartographic Boundary File + + http://www2.census.gov/geo/tiger/GENZ2010/ + + + + The 2010 cartographic boundary shapefiles are simplified representations of selected geographic areas from the Census Bureau's MAF/TIGER geographic database. These boundary files are specifically designed for small scale thematic mapping. When possible generalization is performed with intent to maintain the hierarchical relationships among geographies and to maintain the alignment of geographies within a file set for a given year. Geographic areas may not align with the same areas from another year. Some geographies are available as nation-based shapefiles while others are available only as state-based files. + To improve the appearance of shapes at small scales, areas are represented with fewer vertices than detailed TIGER/Line equivalents. These boundary files take up less disk space than their ungeneralized counterparts. Cartographic boundary files take less time to render on screen. These files were specifically created to support small-scale thematic mapping. + + + + + 201109 + 201109 + + + publication date + + + Complete + None planned. New cartographic boundary files will be produced on an annual release schedule. Types of geography released may vary from year to year. + + + + -167.650000 + -65.221527 + 71.342941 + -14.605210 + + + + + + None + 2010 Census + Cartographic Boundary + Generalized + Shapefile + State + + + ISO 19115 Topic Categories + Boundaries + + + None + + +United States + + +US + + + + None + These products are free to use in a product or publication, however acknowledgement must be given to the U.S. Census Bureau as the source. The boundary information is for visual display at appropriate small scales only. Cartographic boundary files should not be used for geographic analysis including area or perimeter calculation. Files should not be used for geocoding addresses. Files should not be used for determining precise geographic area relationships. + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 + 301.763.4710 + geo.geography@census.gov +
+
+ Files were generated by U.S. Census Bureau Linux-based batch generalization software. FME (by Safe Software) was used to convert polygons from Oracle Spatial format into ESRI shapefile format. +
+ + + Accurate against American National Standards Institute (ANSI) Publication INCITS 446-2008 (Geographic Names Information System (GNIS)) at the 100% level for the codes and base names present in the file. Some entities may have NULL name and/or Legal/Statistical Area Description (LSAD) attribution and this does not imply, in all cases, that the entities do not have names and/or LSADs. The remaining attribute information has been examined but has not been fully tested for accuracy. + + The Census Bureau performed automated tests to ensure logical consistency of the source database. Segments making up the outer and inner boundaries of a polygon tie end-to-end to completely enclose the area. All polygons were tested for closure. The Census Bureau uses its internally developed geographic update system to enhance and modify spatial and attribute data in the Census MAF/TIGER database. Standard geographic codes, such as FIPS codes for states, counties, municipalities, county subdivisions, places, American Indian/Alaska Native/Native Hawaiian areas, and congressional districts are used when encoding spatial entities. The Census Bureau performed spatial data tests for logical consistency of the codes during the compilation of the original Census MAF/TIGER database files. Feature attribute information has been examined but has not been fully tested for consistency. + The Cartographic Boundary Files are generalized representations of extracts taken from the MAF/TIGER Database. Generalized boundary files are clipped to a simplified version of the U.S. outline. As a result, some off-shore areas may be excluded from the generalized files. Some small holes or discontiguous parts of areas are not included in generalized files. + + + Data are not accurate. Data are generalized representations of 2010 Census geographic boundaries at 1:500,000. + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division + unpublished material + Master Address File/Topologically Integrated Geographic Encoding and Referencing Database: Final 2010 Tabulation Benchmark (TAB10) + + + Geo-spatial Relational Database + + + + 20100101 + 20100101 + + + The dates describe the effective date of 2010 Census boundaries. + + MAF/TIGER + All spatial and feature data + + + Spatial data were extracted from the MAF/TIGER database and processed through a U.S. Census Bureau batch generalization system. + MAF/TIGER + 201109 + + + + + INCITS (formerly FIPS) codes. + Vector + + + G-polygon + 3221 + + + + + + + 0.000458 + 0.000458 + Decimal degrees + + + North American Datum of 1983 + Geodetic Reference System 80 + 6378137.000000 + 298.257222 + + + + + + The 2010 cartographic boundary polygon shapefiles contain boundary data for a specific type of Census geography. See the U.S. Census Bureau Geographic Terms and Concepts documentation for further explanation of Census geography (http://www.census.gov/geo/www/2010census/GTC_10.pdf). + +Field names, descriptions and data types are listed in this format: FIELD_NAME Description [data value or type]. + +At a miniumum, the following four fields will appear in every file: GEO_ID Unique identifier for a geographic entity [alphanumeric]; LSAD Standard abbreviation translation of Legal/Statistical Area Description (LSAD) code as used on census maps [alpha]; NAME Name without translated Legal/Statistical Area Description (LSAD) [alphanumeric]; CENSUSAREA Area of entity before generalization in square miles [numeric]. The CENSUSAREA field is the calculated area derived from the ungeneralized area of each entity. This field can be used in density calculations. Users should not calculate the area of the generalized polygons for use in any analysis. Use the GEO_ID field to join these spatial tables to 2010 Census data tables. NAME and/or LSAD may be NULL. This does not imply the entities do not have names and/or LSADs but rather the names and/or LSADs may not have been populated for a given file. + +Additional attribution for a shapefile will vary depending on the fields appropriate for a given type of geography. These fields may include: AIANHH American Indian Area/Alaska Native Area/Hawaiian Home Land [4-digit Census code]; AIHHTLI American Indian Trust Land/Hawaiian Home Land Indicator ['R' for reservation, 'T' for off-reservation trust land], AITSCE American Indian Tribal Subdivision [3-digit Census code]; ANRC Alaska Native Regional Corporation [5-digit FIPS code]; BLKGRP Block Group [1-digit Census code]; CBSA Metropolitan Statistical Area/Micropolitan Statistical Area [5-digit FIPS code]; CD Congressional District [2-digit FIPS code]; CNECTA Combined New England City and Town Area [3-digit FIPS code]; CONCIT Consolidated City [5-digit FIPS code]; COUNTY County [3-digit FIPS code]; COUSUB County Subdivision [5-digit FIPS code]; CSA Combined Statistical Area [3-digit Census code]; DIVISION Census Division [1-digit Census code]; METDIV Metropolitan Division [5-digit FIPS code]; NECTA New England City and Town Area [5-digit FIPS code]; NECTADIV New England City and Town Area Division [5-digit FIPS code]; PLACE Place [5-digit FIPS code]; REGION Census Region [1-digit Census code]; SDELM Elementary School District [5-digit Local Education Agency code]; SDSEC Secondary School District [5-digit Local Education Agency code]; SDUNI Unified School District [5-digit Local Education Agency code]; SLDL State Legislative District (Lower Chamber) [alphanumeric]; SLDU State Legislative District (Upper Chamber) [alphanumeric]; STATE State [2-digit FIPS code]; SUBMCD Subminor Civil Division [5-digit FIPS code] TBLKGRP Tribal Block Group [1-digit alphanumeric]; TRACT Tract [6-digit Census code]; TTRACT Tribal Census Tract [6-digit Census code]; VTD Voting District [alphanumeric]; ZCTA5 ZIP Code Tabulation Area [5-digit Census code]. + +Some nation-based files may include Puerto Rico and the Island Areas of the United States. Island areas include American Samoa, Guam, the Commonwealth of the Northern Mariana Islands (Northern Mariana Islands), and the United States Virgin Islands. + http://www.census.gov/geo/www/2010census/GTC_10.pdf + + + + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1128 +
+
+ No warranty, expressed or implied is made with regard to the accuracy of these data, and no liability is assumed by the U.S. Government in general or the U.S. Census Bureau in specific as to the spatial or attribute accuracy of the data. The act of distribution shall not constitute any such warranty and no responsibility is assumed by the U.S. government in the use of these files. The boundary information is for small-scale mapping purposes only; boundary depiction and designation for small-scale mapping purposes do not constitute a determination of jurisdictional authority or rights of ownership or entitlement and they are not legal land descriptions. + + + + SHP (compressed) + The files were compressed using Linux-based Info-ZIP Zip 2.32. Files can be decompressed with PK-ZIP, version 1.93A or higher, WinZip or other decompression software packages. + + + + + + http://www.census.gov/geo/www/cob/index.html + + + + + + The online cartographic boundary files may be downloaded without charge. + + The cartographic boundary files contain geographic data only and do not include display or mapping software or statistical data. The files are delivered as zipped ESRI Shapefiles. Users are responsible for converting or translating the files into a format used by their specific software packages. +
+ + 201109 + + + + U.S. Department of Commerce, U.S. Census Bureau, Geography Division/Cartographic Products Branch + + + mailing +
4600 Silver Hill Road
+ Washington + DC + 20233-7400 + United States +
+ 301.763.1101 + 301.763.4710 + geo.geography@census.gov +
+
+ Content Standard for Digital Geospatial Metadata + FGDC-STD-001-1998 +
+
\ No newline at end of file diff --git a/plotly/tests/test_optional/test_figure_factory.py b/plotly/tests/test_optional/test_figure_factory/test_figure_factory.py similarity index 97% rename from plotly/tests/test_optional/test_figure_factory.py rename to plotly/tests/test_optional/test_figure_factory/test_figure_factory.py index d0a5755b371..4ab145bdac7 100644 --- a/plotly/tests/test_optional/test_figure_factory.py +++ b/plotly/tests/test_optional/test_figure_factory/test_figure_factory.py @@ -2718,3 +2718,105 @@ def test_full_bullet(self): 'zeroline': False}} } self.assert_dict_equal(fig, exp_fig) + + +class TestChoropleth(NumpyTestUtilsMixin, TestCase): + + def test_fips_values_same_length(self): + pattern = 'fips and values must be the same length' + self.assertRaisesRegexp( + PlotlyError, pattern, ff.create_choropleth, + fips=[1001], values=[4004, 40004] + ) + + + def test_correct_order_param(self): + pattern = ( + 'if you are using a custom order of unique values from ' + 'your color column, you must: have all the unique values ' + 'in your order and have no duplicate items' + ) + + self.assertRaisesRegexp( + PlotlyError, pattern, ff.create_choropleth, + fips=[1], values=[1], order=[1, 1, 1] + ) + + def test_colorscale_and_levels_same_length(self): + self.assertRaises( + PlotlyError, ff.create_choropleth, + fips=[1001, 1003, 1005], values=[5, 2, 1], + colorscale=['rgb(0,0,0)'] + ) + + def test_scope_is_not_list(self): + + pattern = "'scope' must be a list/tuple/sequence" + + self.assertRaisesRegexp( + PlotlyError, pattern, ff.create_choropleth, + fips=[1001, 1003], values=[5, 2], scope='foo', + ) + + def test_full_choropleth(self): + fips = [1001] + values = [1] + fig = ff.create_choropleth( + fips=fips, values=values, + simplify_county=1 + ) + + exp_fig_head = [ + -88.053375, + -88.02916499999999, + -88.02432999999999, + -88.04504299999999, + -88.053375, + np.nan, + -88.211209, + -88.209999, + -88.208733, + -88.209559, + -88.211209, + np.nan, + -88.22511999999999, + -88.22128099999999, + -88.218694, + -88.22465299999999, + -88.22511999999999, + np.nan, + -88.264659, + -88.25782699999999, + -88.25947, + -88.255659, + -88.264659, + np.nan, + -88.327302, + -88.20146799999999, + -88.141143, + -88.124658, + -88.074854, + -88.12493599999999, + -88.10665399999999, + -88.149812, + -88.327302, + np.nan, + -88.346745, + -88.341235, + -88.33288999999999, + -88.346823, + -88.346745, + np.nan, + -88.473227, + -88.097888, + -88.154617, + -88.20295899999999, + -85.605165, + -85.18440000000001, + -85.12218899999999, + -85.142567, + -85.113329, + -85.10533699999999 + ] + + self.assertEqual(fig['data'][2]['x'][:50], exp_fig_head) diff --git a/plotly/version.py b/plotly/version.py index 82190396f2f..ba9b91332bd 100644 --- a/plotly/version.py +++ b/plotly/version.py @@ -1 +1 @@ -__version__ = '2.3.0' +__version__ = '2.4.0' diff --git a/tox.ini b/tox.ini index e78d67242bc..468f9b45801 100644 --- a/tox.ini +++ b/tox.ini @@ -62,6 +62,9 @@ deps= optional: jupyter==1.0.0 optional: pandas==0.19.2 optional: scipy==0.18.1 + optional: shapely==1.6.3 + optional: geopandas==0.3.0 + optional: pyshp==1.2.10 ; CORE ENVIRONMENTS [testenv:py27-core]