File Coverage

blib/lib/Chart/Plotly/Trace/Funnel/Marker/Colorbar.pm
Criterion Covered Total %
statement 18 34 52.9
branch 0 8 0.0
condition 0 8 0.0
subroutine 6 7 85.7
pod 1 1 100.0
total 25 58 43.1


line stmt bran cond sub pod time code
1             package Chart::Plotly::Trace::Funnel::Marker::Colorbar;
2 1     1   6 use Moose;
  1         2  
  1         5  
3 1     1   5204 use MooseX::ExtraArgs;
  1         2  
  1         6  
4 1     1   1878 use Moose::Util::TypeConstraints qw(enum union);
  1         2  
  1         6  
5             if ( !defined Moose::Util::TypeConstraints::find_type_constraint('PDL') ) {
6             Moose::Util::TypeConstraints::type('PDL');
7             }
8              
9 1     1   928 use Chart::Plotly::Trace::Funnel::Marker::Colorbar::Tickfont;
  1         3  
  1         34  
10 1     1   484 use Chart::Plotly::Trace::Funnel::Marker::Colorbar::Tickformatstop;
  1         2  
  1         33  
11 1     1   455 use Chart::Plotly::Trace::Funnel::Marker::Colorbar::Title;
  1         4  
  1         778  
12              
13             our $VERSION = '0.039'; # VERSION
14              
15             # ABSTRACT: This attribute is one of the possible options for the trace funnel.
16              
17             sub TO_JSON {
18 0     0 1   my $self = shift;
19 0   0       my $extra_args = $self->extra_args // {};
20 0           my $meta = $self->meta;
21 0           my %hash = %$self;
22 0           for my $name ( sort keys %hash ) {
23 0           my $attr = $meta->get_attribute($name);
24 0 0         if ( defined $attr ) {
25 0           my $value = $hash{$name};
26 0           my $type = $attr->type_constraint;
27 0 0 0       if ( $type && $type->equals('Bool') ) {
28 0 0         $hash{$name} = $value ? \1 : \0;
29             }
30             }
31             }
32 0           %hash = ( %hash, %$extra_args );
33 0           delete $hash{'extra_args'};
34 0 0 0       if ( $self->can('type') && ( !defined $hash{'type'} ) ) {
35 0           $hash{type} = $self->type();
36             }
37 0           return \%hash;
38             }
39              
40             has bgcolor => ( is => "rw",
41             isa => "Str",
42             documentation => "Sets the color of padded area.",
43             );
44              
45             has bordercolor => ( is => "rw",
46             isa => "Str",
47             documentation => "Sets the axis line color.",
48             );
49              
50             has borderwidth => ( is => "rw",
51             isa => "Num",
52             documentation => "Sets the width (in px) or the border enclosing this color bar.",
53             );
54              
55             has dtick => (
56             is => "rw",
57             isa => "Any",
58             documentation =>
59             "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<f>*, 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 *n* 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*",
60             );
61              
62             has exponentformat => (
63             is => "rw",
64             isa => enum( [ "none", "e", "E", "power", "SI", "B" ] ),
65             documentation =>
66             "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.",
67             );
68              
69             has len => (
70             is => "rw",
71             isa => "Num",
72             documentation =>
73             "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.",
74             );
75              
76             has lenmode => (
77             is => "rw",
78             isa => enum( [ "fraction", "pixels" ] ),
79             documentation =>
80             "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.",
81             );
82              
83             has nticks => (
84             is => "rw",
85             isa => "Int",
86             documentation =>
87             "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*.",
88             );
89              
90             has outlinecolor => ( is => "rw",
91             isa => "Str",
92             documentation => "Sets the axis line color.",
93             );
94              
95             has outlinewidth => ( is => "rw",
96             isa => "Num",
97             documentation => "Sets the width (in px) of the axis line.",
98             );
99              
100             has separatethousands => ( is => "rw",
101             isa => "Bool",
102             documentation => "If \"true\", even 4-digit integers are separated",
103             );
104              
105             has showexponent => (
106             is => "rw",
107             isa => enum( [ "all", "first", "last", "none" ] ),
108             documentation =>
109             "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.",
110             );
111              
112             has showticklabels => ( is => "rw",
113             isa => "Bool",
114             documentation => "Determines whether or not the tick labels are drawn.",
115             );
116              
117             has showtickprefix => (
118             is => "rw",
119             isa => enum( [ "all", "first", "last", "none" ] ),
120             documentation =>
121             "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.",
122             );
123              
124             has showticksuffix => ( is => "rw",
125             isa => enum( [ "all", "first", "last", "none" ] ),
126             documentation => "Same as `showtickprefix` but for tick suffixes.",
127             );
128              
129             has thickness => (
130             is => "rw",
131             isa => "Num",
132             documentation =>
133             "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.",
134             );
135              
136             has thicknessmode => (
137             is => "rw",
138             isa => enum( [ "fraction", "pixels" ] ),
139             documentation =>
140             "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.",
141             );
142              
143             has tick0 => (
144             is => "rw",
145             isa => "Any",
146             documentation =>
147             "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<f>* (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.",
148             );
149              
150             has tickangle => (
151             is => "rw",
152             documentation =>
153             "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.",
154             );
155              
156             has tickcolor => ( is => "rw",
157             isa => "Str",
158             documentation => "Sets the tick color.",
159             );
160              
161             has tickfont => ( is => "rw",
162             isa => "Maybe[HashRef]|Chart::Plotly::Trace::Funnel::Marker::Colorbar::Tickfont", );
163              
164             has tickformat => (
165             is => "rw",
166             isa => "Str",
167             documentation =>
168             "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-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#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*",
169             );
170              
171             has tickformatstops => ( is => "rw",
172             isa => "ArrayRef|ArrayRef[Chart::Plotly::Trace::Funnel::Marker::Colorbar::Tickformatstop]", );
173              
174             has ticklen => ( is => "rw",
175             isa => "Num",
176             documentation => "Sets the tick length (in px).",
177             );
178              
179             has tickmode => (
180             is => "rw",
181             isa => enum( [ "auto", "linear", "array" ] ),
182             documentation =>
183             "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).",
184             );
185              
186             has tickprefix => ( is => "rw",
187             isa => "Str",
188             documentation => "Sets a tick label prefix.",
189             );
190              
191             has ticks => (
192             is => "rw",
193             isa => enum( [ "outside", "inside", "" ] ),
194             documentation =>
195             "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.",
196             );
197              
198             has ticksuffix => ( is => "rw",
199             isa => "Str",
200             documentation => "Sets a tick label suffix.",
201             );
202              
203             has ticktext => (
204             is => "rw",
205             isa => "ArrayRef|PDL",
206             documentation =>
207             "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.",
208             );
209              
210             has ticktextsrc => ( is => "rw",
211             isa => "Str",
212             documentation => "Sets the source reference on plot.ly for ticktext .",
213             );
214              
215             has tickvals => (
216             is => "rw",
217             isa => "ArrayRef|PDL",
218             documentation =>
219             "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.",
220             );
221              
222             has tickvalssrc => ( is => "rw",
223             isa => "Str",
224             documentation => "Sets the source reference on plot.ly for tickvals .",
225             );
226              
227             has tickwidth => ( is => "rw",
228             isa => "Num",
229             documentation => "Sets the tick width (in px).",
230             );
231              
232             has title => ( is => "rw",
233             isa => "Maybe[HashRef]|Chart::Plotly::Trace::Funnel::Marker::Colorbar::Title", );
234              
235             has x => ( is => "rw",
236             isa => "Num",
237             documentation => "Sets the x position of the color bar (in plot fraction).",
238             );
239              
240             has xanchor => (
241             is => "rw",
242             isa => enum( [ "left", "center", "right" ] ),
243             documentation =>
244             "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.",
245             );
246              
247             has xpad => ( is => "rw",
248             isa => "Num",
249             documentation => "Sets the amount of padding (in px) along the x direction.",
250             );
251              
252             has y => ( is => "rw",
253             isa => "Num",
254             documentation => "Sets the y position of the color bar (in plot fraction).",
255             );
256              
257             has yanchor => (
258             is => "rw",
259             isa => enum( [ "top", "middle", "bottom" ] ),
260             documentation =>
261             "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.",
262             );
263              
264             has ypad => ( is => "rw",
265             isa => "Num",
266             documentation => "Sets the amount of padding (in px) along the y direction.",
267             );
268              
269             __PACKAGE__->meta->make_immutable();
270             1;
271              
272             __END__
273              
274             =pod
275              
276             =encoding utf-8
277              
278             =head1 NAME
279              
280             Chart::Plotly::Trace::Funnel::Marker::Colorbar - This attribute is one of the possible options for the trace funnel.
281              
282             =head1 VERSION
283              
284             version 0.039
285              
286             =head1 SYNOPSIS
287              
288             use Chart::Plotly;
289             use Chart::Plotly::Plot;
290             use JSON;
291             use Chart::Plotly::Trace::Funnel;
292            
293             # Example from https://github.com/plotly/plotly.js/blob/b93e3a5a83b6561ac6258a59f274b5fc87630c3e/test/image/mocks/funnel_11.json
294             my $trace1 = Chart::Plotly::Trace::Funnel->new({'orientation' => 'v', 'marker' => {'color' => 'rgb(255, 102, 97)', }, 'y' => [13.23, 22.7, 26.06, ], 'x' => ['Half Dose', 'Full Dose', 'Double Dose', ], 'name' => 'Orange Juice', });
295            
296             my $trace2 = Chart::Plotly::Trace::Funnel->new({'name' => 'Vitamin C', 'marker' => {'color' => 'rgb(0, 196, 200)', }, 'y' => [7.98, 16.77, 26.14, ], 'x' => ['Half Dose', 'Full Dose', 'Double Dose', ], 'orientation' => 'v', });
297            
298             my $trace3 = Chart::Plotly::Trace::Funnel->new({'name' => 'Std Dev - OJ', 'x' => ['Half Dose', 'Full Dose', 'Double Dose', ], 'y' => [1.4102837, 1.236752, 0.8396031, ], 'visible' => JSON::false, 'orientation' => 'v', });
299            
300             my $trace4 = Chart::Plotly::Trace::Funnel->new({'y' => [0.868562, 0.7954104, 1.5171757, ], 'x' => ['Half Dose', 'Full Dose', 'Double Dose', ], 'name' => 'Std Dev - VC', 'orientation' => 'v', 'visible' => JSON::false, });
301            
302            
303             my $plot = Chart::Plotly::Plot->new(
304             traces => [$trace1, $trace2, $trace3, $trace4, ],
305             layout =>
306             {'autosize' => JSON::false, 'hidesources' => JSON::false, 'plot_bgcolor' => 'rgb(217, 217, 217)', 'font' => {'color' => '#000', 'size' => 12, 'family' => 'Arial, sans-serif', }, 'width' => 600, 'separators' => '.,', 'legend' => {'xanchor' => 'left', 'font' => {'size' => 16, 'family' => '', 'color' => 'rgb(0, 0, 0)', }, 'bgcolor' => 'rgba(255, 255, 255, 0)', 'bordercolor' => 'rgba(0, 0, 0, 0)', 'yanchor' => 'auto', 'x' => 1.02, 'y' => 0.931907250442406, 'borderwidth' => 1, 'traceorder' => 'normal', }, 'funnelgroupgap' => 0, 'funnelgap' => 0.2, 'annotations' => [{'tag' => '', 'yatype' => 'linear', 'showarrow' => JSON::false, 'xanchor' => 'auto', 'bgcolor' => 'rgba(0,0,0,0)', 'arrowhead' => 1, 'yref' => 'paper', 'ax' => -10, 'align' => 'center', 'yanchor' => 'auto', 'xatype' => 'category', 'bordercolor' => '', 'ref' => 'paper', 'text' => '<b>Supplement</b>', 'x' => 1.3479735318445, 'y' => 0.998214285714286, 'opacity' => 1, 'arrowwidth' => 0, 'font' => {'size' => 18, 'family' => '', 'color' => '', }, 'ay' => -26.7109375, 'arrowcolor' => '', 'borderpad' => 1, 'borderwidth' => 1, 'xref' => 'paper', 'arrowsize' => 1, }, ], 'height' => 440, 'dragmode' => 'zoom', 'hovermode' => 'x', 'paper_bgcolor' => '#fff', 'boxmode' => 'overlay', 'showlegend' => JSON::true, 'titlefont' => {'family' => '', 'size' => 16, 'color' => '', }, 'title' => 'Grouped Funnel Chart', 'margin' => {'r' => 0, 't' => 80, 'b' => 80, 'l' => 80, 'autoexpand' => JSON::true, 'pad' => 2, }, 'yaxis' => {'gridcolor' => 'rgb(255, 255, 255)', 'autotick' => JSON::true, 'ticks' => '', 'tickfont' => {'color' => '', 'size' => 16, 'family' => '', }, 'mirror' => JSON::true, 'tickangle' => 0, 'domain' => [0, 1, ], 'anchor' => 'x', 'showgrid' => JSON::true, 'exponentformat' => 'e', 'tick0' => 0, 'showticklabels' => JSON::true, 'nticks' => 0, 'zerolinewidth' => 1, 'zeroline' => JSON::false, 'position' => 0, 'range' => [0, 29.1128165263158, ], 'dtick' => 5, 'showexponent' => 'all', 'showline' => JSON::false, 'linecolor' => '#000', 'type' => 'linear', 'linewidth' => 0.1, 'overlaying' => JSON::false, 'ticklen' => 5, 'rangemode' => 'normal', 'tickwidth' => 1, 'tickcolor' => '#000', 'title' => 'Length', 'autorange' => JSON::true, 'titlefont' => {'size' => 16, 'family' => '', 'color' => '', }, 'zerolinecolor' => '#000', 'gridwidth' => 1.9, }, 'funnelmode' => 'group', 'xaxis' => {'ticks' => '', 'autotick' => JSON::true, 'gridcolor' => 'rgb(255, 255, 255)', 'tickfont' => {'color' => '', 'family' => '', 'size' => 16, }, 'mirror' => JSON::true, 'anchor' => 'y', 'tickangle' => 0, 'domain' => [0, 1, ], 'showgrid' => JSON::true, 'exponentformat' => 'e', 'tick0' => 0, 'showticklabels' => JSON::true, 'range' => [-0.5, 2.5, ], 'nticks' => 0, 'zerolinewidth' => 1, 'zeroline' => JSON::false, 'position' => 0, 'showexponent' => 'all', 'dtick' => 1, 'showline' => JSON::false, 'type' => 'category', 'linecolor' => '#000', 'overlaying' => JSON::false, 'linewidth' => 0.1, 'ticklen' => 5, 'rangemode' => 'normal', 'titlefont' => {'size' => 16, 'family' => '', 'color' => '', }, 'autorange' => JSON::true, 'title' => 'Dose (mg)', 'tickwidth' => 1, 'tickcolor' => '#000', 'gridwidth' => 1.9, 'zerolinecolor' => '#000', }, }
307             );
308            
309             Chart::Plotly::show_plot($plot);
310              
311             =head1 DESCRIPTION
312              
313             This attribute is part of the possible options for the trace funnel.
314              
315             This file has been autogenerated from the official plotly.js source.
316              
317             If you like Plotly, please support them: L<https://plot.ly/>
318             Open source announcement: L<https://plot.ly/javascript/open-source-announcement/>
319              
320             Full reference: L<https://plot.ly/javascript/reference/#funnel>
321              
322             =head1 DISCLAIMER
323              
324             This is an unofficial Plotly Perl module. Currently I'm not affiliated in any way with Plotly.
325             But I think plotly.js is a great library and I want to use it with perl.
326              
327             =head1 METHODS
328              
329             =head2 TO_JSON
330              
331             Serialize the trace to JSON. This method should be called only by L<JSON> serializer.
332              
333             =head1 ATTRIBUTES
334              
335             =over
336              
337             =item * bgcolor
338              
339             Sets the color of padded area.
340              
341             =item * bordercolor
342              
343             Sets the axis line color.
344              
345             =item * borderwidth
346              
347             Sets the width (in px) or the border enclosing this color bar.
348              
349             =item * dtick
350              
351             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<f>*, 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 *n* 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*
352              
353             =item * exponentformat
354              
355             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.
356              
357             =item * len
358              
359             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.
360              
361             =item * lenmode
362              
363             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.
364              
365             =item * nticks
366              
367             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*.
368              
369             =item * outlinecolor
370              
371             Sets the axis line color.
372              
373             =item * outlinewidth
374              
375             Sets the width (in px) of the axis line.
376              
377             =item * separatethousands
378              
379             If "true", even 4-digit integers are separated
380              
381             =item * showexponent
382              
383             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.
384              
385             =item * showticklabels
386              
387             Determines whether or not the tick labels are drawn.
388              
389             =item * showtickprefix
390              
391             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.
392              
393             =item * showticksuffix
394              
395             Same as `showtickprefix` but for tick suffixes.
396              
397             =item * thickness
398              
399             Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.
400              
401             =item * thicknessmode
402              
403             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.
404              
405             =item * tick0
406              
407             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<f>* (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.
408              
409             =item * tickangle
410              
411             Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.
412              
413             =item * tickcolor
414              
415             Sets the tick color.
416              
417             =item * tickfont
418              
419             =item * tickformat
420              
421             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-3.x-api-reference/blob/master/Formatting.md#d3_format And for dates see: https://github.com/d3/d3-3.x-api-reference/blob/master/Time-Formatting.md#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*
422              
423             =item * tickformatstops
424              
425             =item * ticklen
426              
427             Sets the tick length (in px).
428              
429             =item * tickmode
430              
431             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).
432              
433             =item * tickprefix
434              
435             Sets a tick label prefix.
436              
437             =item * ticks
438              
439             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.
440              
441             =item * ticksuffix
442              
443             Sets a tick label suffix.
444              
445             =item * ticktext
446              
447             Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.
448              
449             =item * ticktextsrc
450              
451             Sets the source reference on plot.ly for ticktext .
452              
453             =item * tickvals
454              
455             Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.
456              
457             =item * tickvalssrc
458              
459             Sets the source reference on plot.ly for tickvals .
460              
461             =item * tickwidth
462              
463             Sets the tick width (in px).
464              
465             =item * title
466              
467             =item * x
468              
469             Sets the x position of the color bar (in plot fraction).
470              
471             =item * xanchor
472              
473             Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar.
474              
475             =item * xpad
476              
477             Sets the amount of padding (in px) along the x direction.
478              
479             =item * y
480              
481             Sets the y position of the color bar (in plot fraction).
482              
483             =item * yanchor
484              
485             Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar.
486              
487             =item * ypad
488              
489             Sets the amount of padding (in px) along the y direction.
490              
491             =back
492              
493             =head1 AUTHOR
494              
495             Pablo Rodríguez González <pablo.rodriguez.gonzalez@gmail.com>
496              
497             =head1 COPYRIGHT AND LICENSE
498              
499             This software is Copyright (c) 2020 by Pablo Rodríguez González.
500              
501             This is free software, licensed under:
502              
503             The MIT (X11) License
504              
505             =cut