1from plotly.basedatatypes import BaseTraceType as _BaseTraceType 2import copy as _copy 3 4 5class Box(_BaseTraceType): 6 7 # class properties 8 # -------------------- 9 _parent_path_str = "" 10 _path_str = "box" 11 _valid_props = { 12 "alignmentgroup", 13 "boxmean", 14 "boxpoints", 15 "customdata", 16 "customdatasrc", 17 "dx", 18 "dy", 19 "fillcolor", 20 "hoverinfo", 21 "hoverinfosrc", 22 "hoverlabel", 23 "hoveron", 24 "hovertemplate", 25 "hovertemplatesrc", 26 "hovertext", 27 "hovertextsrc", 28 "ids", 29 "idssrc", 30 "jitter", 31 "legendgroup", 32 "line", 33 "lowerfence", 34 "lowerfencesrc", 35 "marker", 36 "mean", 37 "meansrc", 38 "median", 39 "mediansrc", 40 "meta", 41 "metasrc", 42 "name", 43 "notched", 44 "notchspan", 45 "notchspansrc", 46 "notchwidth", 47 "offsetgroup", 48 "opacity", 49 "orientation", 50 "pointpos", 51 "q1", 52 "q1src", 53 "q3", 54 "q3src", 55 "quartilemethod", 56 "sd", 57 "sdsrc", 58 "selected", 59 "selectedpoints", 60 "showlegend", 61 "stream", 62 "text", 63 "textsrc", 64 "type", 65 "uid", 66 "uirevision", 67 "unselected", 68 "upperfence", 69 "upperfencesrc", 70 "visible", 71 "whiskerwidth", 72 "width", 73 "x", 74 "x0", 75 "xaxis", 76 "xcalendar", 77 "xperiod", 78 "xperiod0", 79 "xperiodalignment", 80 "xsrc", 81 "y", 82 "y0", 83 "yaxis", 84 "ycalendar", 85 "yperiod", 86 "yperiod0", 87 "yperiodalignment", 88 "ysrc", 89 } 90 91 # alignmentgroup 92 # -------------- 93 @property 94 def alignmentgroup(self): 95 """ 96 Set several traces linked to the same position axis or matching 97 axes to the same alignmentgroup. This controls whether bars 98 compute their positional range dependently or independently. 99 100 The 'alignmentgroup' property is a string and must be specified as: 101 - A string 102 - A number that will be converted to a string 103 104 Returns 105 ------- 106 str 107 """ 108 return self["alignmentgroup"] 109 110 @alignmentgroup.setter 111 def alignmentgroup(self, val): 112 self["alignmentgroup"] = val 113 114 # boxmean 115 # ------- 116 @property 117 def boxmean(self): 118 """ 119 If True, the mean of the box(es)' underlying distribution is 120 drawn as a dashed line inside the box(es). If "sd" the standard 121 deviation is also drawn. Defaults to True when `mean` is set. 122 Defaults to "sd" when `sd` is set Otherwise defaults to False. 123 124 The 'boxmean' property is an enumeration that may be specified as: 125 - One of the following enumeration values: 126 [True, 'sd', False] 127 128 Returns 129 ------- 130 Any 131 """ 132 return self["boxmean"] 133 134 @boxmean.setter 135 def boxmean(self, val): 136 self["boxmean"] = val 137 138 # boxpoints 139 # --------- 140 @property 141 def boxpoints(self): 142 """ 143 If "outliers", only the sample points lying outside the 144 whiskers are shown If "suspectedoutliers", the outlier points 145 are shown and points either less than 4*Q1-3*Q3 or greater than 146 4*Q3-3*Q1 are highlighted (see `outliercolor`) If "all", all 147 sample points are shown If False, only the box(es) are shown 148 with no sample points Defaults to "suspectedoutliers" when 149 `marker.outliercolor` or `marker.line.outliercolor` is set. 150 Defaults to "all" under the q1/median/q3 signature. Otherwise 151 defaults to "outliers". 152 153 The 'boxpoints' property is an enumeration that may be specified as: 154 - One of the following enumeration values: 155 ['all', 'outliers', 'suspectedoutliers', False] 156 157 Returns 158 ------- 159 Any 160 """ 161 return self["boxpoints"] 162 163 @boxpoints.setter 164 def boxpoints(self, val): 165 self["boxpoints"] = val 166 167 # customdata 168 # ---------- 169 @property 170 def customdata(self): 171 """ 172 Assigns extra data each datum. This may be useful when 173 listening to hover, click and selection events. Note that, 174 "scatter" traces also appends customdata items in the markers 175 DOM elements 176 177 The 'customdata' property is an array that may be specified as a tuple, 178 list, numpy array, or pandas Series 179 180 Returns 181 ------- 182 numpy.ndarray 183 """ 184 return self["customdata"] 185 186 @customdata.setter 187 def customdata(self, val): 188 self["customdata"] = val 189 190 # customdatasrc 191 # ------------- 192 @property 193 def customdatasrc(self): 194 """ 195 Sets the source reference on Chart Studio Cloud for customdata 196 . 197 198 The 'customdatasrc' property must be specified as a string or 199 as a plotly.grid_objs.Column object 200 201 Returns 202 ------- 203 str 204 """ 205 return self["customdatasrc"] 206 207 @customdatasrc.setter 208 def customdatasrc(self, val): 209 self["customdatasrc"] = val 210 211 # dx 212 # -- 213 @property 214 def dx(self): 215 """ 216 Sets the x coordinate step for multi-box traces set using 217 q1/median/q3. 218 219 The 'dx' property is a number and may be specified as: 220 - An int or float 221 222 Returns 223 ------- 224 int|float 225 """ 226 return self["dx"] 227 228 @dx.setter 229 def dx(self, val): 230 self["dx"] = val 231 232 # dy 233 # -- 234 @property 235 def dy(self): 236 """ 237 Sets the y coordinate step for multi-box traces set using 238 q1/median/q3. 239 240 The 'dy' property is a number and may be specified as: 241 - An int or float 242 243 Returns 244 ------- 245 int|float 246 """ 247 return self["dy"] 248 249 @dy.setter 250 def dy(self, val): 251 self["dy"] = val 252 253 # fillcolor 254 # --------- 255 @property 256 def fillcolor(self): 257 """ 258 Sets the fill color. Defaults to a half-transparent variant of 259 the line color, marker color, or marker line color, whichever 260 is available. 261 262 The 'fillcolor' property is a color and may be specified as: 263 - A hex string (e.g. '#ff0000') 264 - An rgb/rgba string (e.g. 'rgb(255,0,0)') 265 - An hsl/hsla string (e.g. 'hsl(0,100%,50%)') 266 - An hsv/hsva string (e.g. 'hsv(0,100%,100%)') 267 - A named CSS color: 268 aliceblue, antiquewhite, aqua, aquamarine, azure, 269 beige, bisque, black, blanchedalmond, blue, 270 blueviolet, brown, burlywood, cadetblue, 271 chartreuse, chocolate, coral, cornflowerblue, 272 cornsilk, crimson, cyan, darkblue, darkcyan, 273 darkgoldenrod, darkgray, darkgrey, darkgreen, 274 darkkhaki, darkmagenta, darkolivegreen, darkorange, 275 darkorchid, darkred, darksalmon, darkseagreen, 276 darkslateblue, darkslategray, darkslategrey, 277 darkturquoise, darkviolet, deeppink, deepskyblue, 278 dimgray, dimgrey, dodgerblue, firebrick, 279 floralwhite, forestgreen, fuchsia, gainsboro, 280 ghostwhite, gold, goldenrod, gray, grey, green, 281 greenyellow, honeydew, hotpink, indianred, indigo, 282 ivory, khaki, lavender, lavenderblush, lawngreen, 283 lemonchiffon, lightblue, lightcoral, lightcyan, 284 lightgoldenrodyellow, lightgray, lightgrey, 285 lightgreen, lightpink, lightsalmon, lightseagreen, 286 lightskyblue, lightslategray, lightslategrey, 287 lightsteelblue, lightyellow, lime, limegreen, 288 linen, magenta, maroon, mediumaquamarine, 289 mediumblue, mediumorchid, mediumpurple, 290 mediumseagreen, mediumslateblue, mediumspringgreen, 291 mediumturquoise, mediumvioletred, midnightblue, 292 mintcream, mistyrose, moccasin, navajowhite, navy, 293 oldlace, olive, olivedrab, orange, orangered, 294 orchid, palegoldenrod, palegreen, paleturquoise, 295 palevioletred, papayawhip, peachpuff, peru, pink, 296 plum, powderblue, purple, red, rosybrown, 297 royalblue, rebeccapurple, saddlebrown, salmon, 298 sandybrown, seagreen, seashell, sienna, silver, 299 skyblue, slateblue, slategray, slategrey, snow, 300 springgreen, steelblue, tan, teal, thistle, tomato, 301 turquoise, violet, wheat, white, whitesmoke, 302 yellow, yellowgreen 303 304 Returns 305 ------- 306 str 307 """ 308 return self["fillcolor"] 309 310 @fillcolor.setter 311 def fillcolor(self, val): 312 self["fillcolor"] = val 313 314 # hoverinfo 315 # --------- 316 @property 317 def hoverinfo(self): 318 """ 319 Determines which trace information appear on hover. If `none` 320 or `skip` are set, no information is displayed upon hovering. 321 But, if `none` is set, click and hover events are still fired. 322 323 The 'hoverinfo' property is a flaglist and may be specified 324 as a string containing: 325 - Any combination of ['x', 'y', 'z', 'text', 'name'] joined with '+' characters 326 (e.g. 'x+y') 327 OR exactly one of ['all', 'none', 'skip'] (e.g. 'skip') 328 - A list or array of the above 329 330 Returns 331 ------- 332 Any|numpy.ndarray 333 """ 334 return self["hoverinfo"] 335 336 @hoverinfo.setter 337 def hoverinfo(self, val): 338 self["hoverinfo"] = val 339 340 # hoverinfosrc 341 # ------------ 342 @property 343 def hoverinfosrc(self): 344 """ 345 Sets the source reference on Chart Studio Cloud for hoverinfo 346 . 347 348 The 'hoverinfosrc' property must be specified as a string or 349 as a plotly.grid_objs.Column object 350 351 Returns 352 ------- 353 str 354 """ 355 return self["hoverinfosrc"] 356 357 @hoverinfosrc.setter 358 def hoverinfosrc(self, val): 359 self["hoverinfosrc"] = val 360 361 # hoverlabel 362 # ---------- 363 @property 364 def hoverlabel(self): 365 """ 366 The 'hoverlabel' property is an instance of Hoverlabel 367 that may be specified as: 368 - An instance of :class:`plotly.graph_objs.box.Hoverlabel` 369 - A dict of string/value properties that will be passed 370 to the Hoverlabel constructor 371 372 Supported dict properties: 373 374 align 375 Sets the horizontal alignment of the text 376 content within hover label box. Has an effect 377 only if the hover label text spans more two or 378 more lines 379 alignsrc 380 Sets the source reference on Chart Studio Cloud 381 for align . 382 bgcolor 383 Sets the background color of the hover labels 384 for this trace 385 bgcolorsrc 386 Sets the source reference on Chart Studio Cloud 387 for bgcolor . 388 bordercolor 389 Sets the border color of the hover labels for 390 this trace. 391 bordercolorsrc 392 Sets the source reference on Chart Studio Cloud 393 for bordercolor . 394 font 395 Sets the font used in hover labels. 396 namelength 397 Sets the default length (in number of 398 characters) of the trace name in the hover 399 labels for all traces. -1 shows the whole name 400 regardless of length. 0-3 shows the first 0-3 401 characters, and an integer >3 will show the 402 whole name if it is less than that many 403 characters, but if it is longer, will truncate 404 to `namelength - 3` characters and add an 405 ellipsis. 406 namelengthsrc 407 Sets the source reference on Chart Studio Cloud 408 for namelength . 409 410 Returns 411 ------- 412 plotly.graph_objs.box.Hoverlabel 413 """ 414 return self["hoverlabel"] 415 416 @hoverlabel.setter 417 def hoverlabel(self, val): 418 self["hoverlabel"] = val 419 420 # hoveron 421 # ------- 422 @property 423 def hoveron(self): 424 """ 425 Do the hover effects highlight individual boxes or sample 426 points or both? 427 428 The 'hoveron' property is a flaglist and may be specified 429 as a string containing: 430 - Any combination of ['boxes', 'points'] joined with '+' characters 431 (e.g. 'boxes+points') 432 433 Returns 434 ------- 435 Any 436 """ 437 return self["hoveron"] 438 439 @hoveron.setter 440 def hoveron(self, val): 441 self["hoveron"] = val 442 443 # hovertemplate 444 # ------------- 445 @property 446 def hovertemplate(self): 447 """ 448 Template string used for rendering the information that appear 449 on hover box. Note that this will override `hoverinfo`. 450 Variables are inserted using %{variable}, for example "y: 451 %{y}". Numbers are formatted using d3-format's syntax 452 %{variable:d3-format}, for example "Price: %{y:$.2f}". 453 https://github.com/d3/d3-3.x-api- 454 reference/blob/master/Formatting.md#d3_format for details on 455 the formatting syntax. Dates are formatted using d3-time- 456 format's syntax %{variable|d3-time-format}, for example "Day: 457 %{2019-01-01|%A}". https://github.com/d3/d3-time- 458 format#locale_format for details on the date formatting syntax. 459 The variables available in `hovertemplate` are the ones emitted 460 as event data described at this link 461 https://plotly.com/javascript/plotlyjs-events/#event-data. 462 Additionally, every attributes that can be specified per-point 463 (the ones that are `arrayOk: true`) are available. Anything 464 contained in tag `<extra>` is displayed in the secondary box, 465 for example "<extra>{fullData.name}</extra>". To hide the 466 secondary box completely, use an empty tag `<extra></extra>`. 467 468 The 'hovertemplate' property is a string and must be specified as: 469 - A string 470 - A number that will be converted to a string 471 - A tuple, list, or one-dimensional numpy array of the above 472 473 Returns 474 ------- 475 str|numpy.ndarray 476 """ 477 return self["hovertemplate"] 478 479 @hovertemplate.setter 480 def hovertemplate(self, val): 481 self["hovertemplate"] = val 482 483 # hovertemplatesrc 484 # ---------------- 485 @property 486 def hovertemplatesrc(self): 487 """ 488 Sets the source reference on Chart Studio Cloud for 489 hovertemplate . 490 491 The 'hovertemplatesrc' property must be specified as a string or 492 as a plotly.grid_objs.Column object 493 494 Returns 495 ------- 496 str 497 """ 498 return self["hovertemplatesrc"] 499 500 @hovertemplatesrc.setter 501 def hovertemplatesrc(self, val): 502 self["hovertemplatesrc"] = val 503 504 # hovertext 505 # --------- 506 @property 507 def hovertext(self): 508 """ 509 Same as `text`. 510 511 The 'hovertext' property is a string and must be specified as: 512 - A string 513 - A number that will be converted to a string 514 - A tuple, list, or one-dimensional numpy array of the above 515 516 Returns 517 ------- 518 str|numpy.ndarray 519 """ 520 return self["hovertext"] 521 522 @hovertext.setter 523 def hovertext(self, val): 524 self["hovertext"] = val 525 526 # hovertextsrc 527 # ------------ 528 @property 529 def hovertextsrc(self): 530 """ 531 Sets the source reference on Chart Studio Cloud for hovertext 532 . 533 534 The 'hovertextsrc' property must be specified as a string or 535 as a plotly.grid_objs.Column object 536 537 Returns 538 ------- 539 str 540 """ 541 return self["hovertextsrc"] 542 543 @hovertextsrc.setter 544 def hovertextsrc(self, val): 545 self["hovertextsrc"] = val 546 547 # ids 548 # --- 549 @property 550 def ids(self): 551 """ 552 Assigns id labels to each datum. These ids for object constancy 553 of data points during animation. Should be an array of strings, 554 not numbers or any other type. 555 556 The 'ids' property is an array that may be specified as a tuple, 557 list, numpy array, or pandas Series 558 559 Returns 560 ------- 561 numpy.ndarray 562 """ 563 return self["ids"] 564 565 @ids.setter 566 def ids(self, val): 567 self["ids"] = val 568 569 # idssrc 570 # ------ 571 @property 572 def idssrc(self): 573 """ 574 Sets the source reference on Chart Studio Cloud for ids . 575 576 The 'idssrc' property must be specified as a string or 577 as a plotly.grid_objs.Column object 578 579 Returns 580 ------- 581 str 582 """ 583 return self["idssrc"] 584 585 @idssrc.setter 586 def idssrc(self, val): 587 self["idssrc"] = val 588 589 # jitter 590 # ------ 591 @property 592 def jitter(self): 593 """ 594 Sets the amount of jitter in the sample points drawn. If 0, the 595 sample points align along the distribution axis. If 1, the 596 sample points are drawn in a random jitter of width equal to 597 the width of the box(es). 598 599 The 'jitter' property is a number and may be specified as: 600 - An int or float in the interval [0, 1] 601 602 Returns 603 ------- 604 int|float 605 """ 606 return self["jitter"] 607 608 @jitter.setter 609 def jitter(self, val): 610 self["jitter"] = val 611 612 # legendgroup 613 # ----------- 614 @property 615 def legendgroup(self): 616 """ 617 Sets the legend group for this trace. Traces part of the same 618 legend group hide/show at the same time when toggling legend 619 items. 620 621 The 'legendgroup' property is a string and must be specified as: 622 - A string 623 - A number that will be converted to a string 624 625 Returns 626 ------- 627 str 628 """ 629 return self["legendgroup"] 630 631 @legendgroup.setter 632 def legendgroup(self, val): 633 self["legendgroup"] = val 634 635 # line 636 # ---- 637 @property 638 def line(self): 639 """ 640 The 'line' property is an instance of Line 641 that may be specified as: 642 - An instance of :class:`plotly.graph_objs.box.Line` 643 - A dict of string/value properties that will be passed 644 to the Line constructor 645 646 Supported dict properties: 647 648 color 649 Sets the color of line bounding the box(es). 650 width 651 Sets the width (in px) of line bounding the 652 box(es). 653 654 Returns 655 ------- 656 plotly.graph_objs.box.Line 657 """ 658 return self["line"] 659 660 @line.setter 661 def line(self, val): 662 self["line"] = val 663 664 # lowerfence 665 # ---------- 666 @property 667 def lowerfence(self): 668 """ 669 Sets the lower fence values. There should be as many items as 670 the number of boxes desired. This attribute has effect only 671 under the q1/median/q3 signature. If `lowerfence` is not 672 provided but a sample (in `y` or `x`) is set, we compute the 673 lower as the last sample point below 1.5 times the IQR. 674 675 The 'lowerfence' property is an array that may be specified as a tuple, 676 list, numpy array, or pandas Series 677 678 Returns 679 ------- 680 numpy.ndarray 681 """ 682 return self["lowerfence"] 683 684 @lowerfence.setter 685 def lowerfence(self, val): 686 self["lowerfence"] = val 687 688 # lowerfencesrc 689 # ------------- 690 @property 691 def lowerfencesrc(self): 692 """ 693 Sets the source reference on Chart Studio Cloud for lowerfence 694 . 695 696 The 'lowerfencesrc' property must be specified as a string or 697 as a plotly.grid_objs.Column object 698 699 Returns 700 ------- 701 str 702 """ 703 return self["lowerfencesrc"] 704 705 @lowerfencesrc.setter 706 def lowerfencesrc(self, val): 707 self["lowerfencesrc"] = val 708 709 # marker 710 # ------ 711 @property 712 def marker(self): 713 """ 714 The 'marker' property is an instance of Marker 715 that may be specified as: 716 - An instance of :class:`plotly.graph_objs.box.Marker` 717 - A dict of string/value properties that will be passed 718 to the Marker constructor 719 720 Supported dict properties: 721 722 color 723 Sets themarkercolor. It accepts either a 724 specific color or an array of numbers that are 725 mapped to the colorscale relative to the max 726 and min values of the array or relative to 727 `marker.cmin` and `marker.cmax` if set. 728 line 729 :class:`plotly.graph_objects.box.marker.Line` 730 instance or dict with compatible properties 731 opacity 732 Sets the marker opacity. 733 outliercolor 734 Sets the color of the outlier sample points. 735 size 736 Sets the marker size (in px). 737 symbol 738 Sets the marker symbol type. Adding 100 is 739 equivalent to appending "-open" to a symbol 740 name. Adding 200 is equivalent to appending 741 "-dot" to a symbol name. Adding 300 is 742 equivalent to appending "-open-dot" or "dot- 743 open" to a symbol name. 744 745 Returns 746 ------- 747 plotly.graph_objs.box.Marker 748 """ 749 return self["marker"] 750 751 @marker.setter 752 def marker(self, val): 753 self["marker"] = val 754 755 # mean 756 # ---- 757 @property 758 def mean(self): 759 """ 760 Sets the mean values. There should be as many items as the 761 number of boxes desired. This attribute has effect only under 762 the q1/median/q3 signature. If `mean` is not provided but a 763 sample (in `y` or `x`) is set, we compute the mean for each box 764 using the sample values. 765 766 The 'mean' property is an array that may be specified as a tuple, 767 list, numpy array, or pandas Series 768 769 Returns 770 ------- 771 numpy.ndarray 772 """ 773 return self["mean"] 774 775 @mean.setter 776 def mean(self, val): 777 self["mean"] = val 778 779 # meansrc 780 # ------- 781 @property 782 def meansrc(self): 783 """ 784 Sets the source reference on Chart Studio Cloud for mean . 785 786 The 'meansrc' property must be specified as a string or 787 as a plotly.grid_objs.Column object 788 789 Returns 790 ------- 791 str 792 """ 793 return self["meansrc"] 794 795 @meansrc.setter 796 def meansrc(self, val): 797 self["meansrc"] = val 798 799 # median 800 # ------ 801 @property 802 def median(self): 803 """ 804 Sets the median values. There should be as many items as the 805 number of boxes desired. 806 807 The 'median' property is an array that may be specified as a tuple, 808 list, numpy array, or pandas Series 809 810 Returns 811 ------- 812 numpy.ndarray 813 """ 814 return self["median"] 815 816 @median.setter 817 def median(self, val): 818 self["median"] = val 819 820 # mediansrc 821 # --------- 822 @property 823 def mediansrc(self): 824 """ 825 Sets the source reference on Chart Studio Cloud for median . 826 827 The 'mediansrc' property must be specified as a string or 828 as a plotly.grid_objs.Column object 829 830 Returns 831 ------- 832 str 833 """ 834 return self["mediansrc"] 835 836 @mediansrc.setter 837 def mediansrc(self, val): 838 self["mediansrc"] = val 839 840 # meta 841 # ---- 842 @property 843 def meta(self): 844 """ 845 Assigns extra meta information associated with this trace that 846 can be used in various text attributes. Attributes such as 847 trace `name`, graph, axis and colorbar `title.text`, annotation 848 `text` `rangeselector`, `updatemenues` and `sliders` `label` 849 text all support `meta`. To access the trace `meta` values in 850 an attribute in the same trace, simply use `%{meta[i]}` where 851 `i` is the index or key of the `meta` item in question. To 852 access trace `meta` in layout attributes, use 853 `%{data[n[.meta[i]}` where `i` is the index or key of the 854 `meta` and `n` is the trace index. 855 856 The 'meta' property accepts values of any type 857 858 Returns 859 ------- 860 Any|numpy.ndarray 861 """ 862 return self["meta"] 863 864 @meta.setter 865 def meta(self, val): 866 self["meta"] = val 867 868 # metasrc 869 # ------- 870 @property 871 def metasrc(self): 872 """ 873 Sets the source reference on Chart Studio Cloud for meta . 874 875 The 'metasrc' property must be specified as a string or 876 as a plotly.grid_objs.Column object 877 878 Returns 879 ------- 880 str 881 """ 882 return self["metasrc"] 883 884 @metasrc.setter 885 def metasrc(self, val): 886 self["metasrc"] = val 887 888 # name 889 # ---- 890 @property 891 def name(self): 892 """ 893 Sets the trace name. The trace name appear as the legend item 894 and on hover. For box traces, the name will also be used for 895 the position coordinate, if `x` and `x0` (`y` and `y0` if 896 horizontal) are missing and the position axis is categorical 897 898 The 'name' property is a string and must be specified as: 899 - A string 900 - A number that will be converted to a string 901 902 Returns 903 ------- 904 str 905 """ 906 return self["name"] 907 908 @name.setter 909 def name(self, val): 910 self["name"] = val 911 912 # notched 913 # ------- 914 @property 915 def notched(self): 916 """ 917 Determines whether or not notches are drawn. Notches displays a 918 confidence interval around the median. We compute the 919 confidence interval as median +/- 1.57 * IQR / sqrt(N), where 920 IQR is the interquartile range and N is the sample size. If two 921 boxes' notches do not overlap there is 95% confidence their 922 medians differ. See 923 https://sites.google.com/site/davidsstatistics/home/notched- 924 box-plots for more info. Defaults to False unless `notchwidth` 925 or `notchspan` is set. 926 927 The 'notched' property must be specified as a bool 928 (either True, or False) 929 930 Returns 931 ------- 932 bool 933 """ 934 return self["notched"] 935 936 @notched.setter 937 def notched(self, val): 938 self["notched"] = val 939 940 # notchspan 941 # --------- 942 @property 943 def notchspan(self): 944 """ 945 Sets the notch span from the boxes' `median` values. There 946 should be as many items as the number of boxes desired. This 947 attribute has effect only under the q1/median/q3 signature. If 948 `notchspan` is not provided but a sample (in `y` or `x`) is 949 set, we compute it as 1.57 * IQR / sqrt(N), where N is the 950 sample size. 951 952 The 'notchspan' property is an array that may be specified as a tuple, 953 list, numpy array, or pandas Series 954 955 Returns 956 ------- 957 numpy.ndarray 958 """ 959 return self["notchspan"] 960 961 @notchspan.setter 962 def notchspan(self, val): 963 self["notchspan"] = val 964 965 # notchspansrc 966 # ------------ 967 @property 968 def notchspansrc(self): 969 """ 970 Sets the source reference on Chart Studio Cloud for notchspan 971 . 972 973 The 'notchspansrc' property must be specified as a string or 974 as a plotly.grid_objs.Column object 975 976 Returns 977 ------- 978 str 979 """ 980 return self["notchspansrc"] 981 982 @notchspansrc.setter 983 def notchspansrc(self, val): 984 self["notchspansrc"] = val 985 986 # notchwidth 987 # ---------- 988 @property 989 def notchwidth(self): 990 """ 991 Sets the width of the notches relative to the box' width. For 992 example, with 0, the notches are as wide as the box(es). 993 994 The 'notchwidth' property is a number and may be specified as: 995 - An int or float in the interval [0, 0.5] 996 997 Returns 998 ------- 999 int|float 1000 """ 1001 return self["notchwidth"] 1002 1003 @notchwidth.setter 1004 def notchwidth(self, val): 1005 self["notchwidth"] = val 1006 1007 # offsetgroup 1008 # ----------- 1009 @property 1010 def offsetgroup(self): 1011 """ 1012 Set several traces linked to the same position axis or matching 1013 axes to the same offsetgroup where bars of the same position 1014 coordinate will line up. 1015 1016 The 'offsetgroup' property is a string and must be specified as: 1017 - A string 1018 - A number that will be converted to a string 1019 1020 Returns 1021 ------- 1022 str 1023 """ 1024 return self["offsetgroup"] 1025 1026 @offsetgroup.setter 1027 def offsetgroup(self, val): 1028 self["offsetgroup"] = val 1029 1030 # opacity 1031 # ------- 1032 @property 1033 def opacity(self): 1034 """ 1035 Sets the opacity of the trace. 1036 1037 The 'opacity' property is a number and may be specified as: 1038 - An int or float in the interval [0, 1] 1039 1040 Returns 1041 ------- 1042 int|float 1043 """ 1044 return self["opacity"] 1045 1046 @opacity.setter 1047 def opacity(self, val): 1048 self["opacity"] = val 1049 1050 # orientation 1051 # ----------- 1052 @property 1053 def orientation(self): 1054 """ 1055 Sets the orientation of the box(es). If "v" ("h"), the 1056 distribution is visualized along the vertical (horizontal). 1057 1058 The 'orientation' property is an enumeration that may be specified as: 1059 - One of the following enumeration values: 1060 ['v', 'h'] 1061 1062 Returns 1063 ------- 1064 Any 1065 """ 1066 return self["orientation"] 1067 1068 @orientation.setter 1069 def orientation(self, val): 1070 self["orientation"] = val 1071 1072 # pointpos 1073 # -------- 1074 @property 1075 def pointpos(self): 1076 """ 1077 Sets the position of the sample points in relation to the 1078 box(es). If 0, the sample points are places over the center of 1079 the box(es). Positive (negative) values correspond to positions 1080 to the right (left) for vertical boxes and above (below) for 1081 horizontal boxes 1082 1083 The 'pointpos' property is a number and may be specified as: 1084 - An int or float in the interval [-2, 2] 1085 1086 Returns 1087 ------- 1088 int|float 1089 """ 1090 return self["pointpos"] 1091 1092 @pointpos.setter 1093 def pointpos(self, val): 1094 self["pointpos"] = val 1095 1096 # q1 1097 # -- 1098 @property 1099 def q1(self): 1100 """ 1101 Sets the Quartile 1 values. There should be as many items as 1102 the number of boxes desired. 1103 1104 The 'q1' property is an array that may be specified as a tuple, 1105 list, numpy array, or pandas Series 1106 1107 Returns 1108 ------- 1109 numpy.ndarray 1110 """ 1111 return self["q1"] 1112 1113 @q1.setter 1114 def q1(self, val): 1115 self["q1"] = val 1116 1117 # q1src 1118 # ----- 1119 @property 1120 def q1src(self): 1121 """ 1122 Sets the source reference on Chart Studio Cloud for q1 . 1123 1124 The 'q1src' property must be specified as a string or 1125 as a plotly.grid_objs.Column object 1126 1127 Returns 1128 ------- 1129 str 1130 """ 1131 return self["q1src"] 1132 1133 @q1src.setter 1134 def q1src(self, val): 1135 self["q1src"] = val 1136 1137 # q3 1138 # -- 1139 @property 1140 def q3(self): 1141 """ 1142 Sets the Quartile 3 values. There should be as many items as 1143 the number of boxes desired. 1144 1145 The 'q3' property is an array that may be specified as a tuple, 1146 list, numpy array, or pandas Series 1147 1148 Returns 1149 ------- 1150 numpy.ndarray 1151 """ 1152 return self["q3"] 1153 1154 @q3.setter 1155 def q3(self, val): 1156 self["q3"] = val 1157 1158 # q3src 1159 # ----- 1160 @property 1161 def q3src(self): 1162 """ 1163 Sets the source reference on Chart Studio Cloud for q3 . 1164 1165 The 'q3src' property must be specified as a string or 1166 as a plotly.grid_objs.Column object 1167 1168 Returns 1169 ------- 1170 str 1171 """ 1172 return self["q3src"] 1173 1174 @q3src.setter 1175 def q3src(self, val): 1176 self["q3src"] = val 1177 1178 # quartilemethod 1179 # -------------- 1180 @property 1181 def quartilemethod(self): 1182 """ 1183 Sets the method used to compute the sample's Q1 and Q3 1184 quartiles. The "linear" method uses the 25th percentile for Q1 1185 and 75th percentile for Q3 as computed using method #10 (listed 1186 on http://www.amstat.org/publications/jse/v14n3/langford.html). 1187 The "exclusive" method uses the median to divide the ordered 1188 dataset into two halves if the sample is odd, it does not 1189 include the median in either half - Q1 is then the median of 1190 the lower half and Q3 the median of the upper half. The 1191 "inclusive" method also uses the median to divide the ordered 1192 dataset into two halves but if the sample is odd, it includes 1193 the median in both halves - Q1 is then the median of the lower 1194 half and Q3 the median of the upper half. 1195 1196 The 'quartilemethod' property is an enumeration that may be specified as: 1197 - One of the following enumeration values: 1198 ['linear', 'exclusive', 'inclusive'] 1199 1200 Returns 1201 ------- 1202 Any 1203 """ 1204 return self["quartilemethod"] 1205 1206 @quartilemethod.setter 1207 def quartilemethod(self, val): 1208 self["quartilemethod"] = val 1209 1210 # sd 1211 # -- 1212 @property 1213 def sd(self): 1214 """ 1215 Sets the standard deviation values. There should be as many 1216 items as the number of boxes desired. This attribute has effect 1217 only under the q1/median/q3 signature. If `sd` is not provided 1218 but a sample (in `y` or `x`) is set, we compute the standard 1219 deviation for each box using the sample values. 1220 1221 The 'sd' property is an array that may be specified as a tuple, 1222 list, numpy array, or pandas Series 1223 1224 Returns 1225 ------- 1226 numpy.ndarray 1227 """ 1228 return self["sd"] 1229 1230 @sd.setter 1231 def sd(self, val): 1232 self["sd"] = val 1233 1234 # sdsrc 1235 # ----- 1236 @property 1237 def sdsrc(self): 1238 """ 1239 Sets the source reference on Chart Studio Cloud for sd . 1240 1241 The 'sdsrc' property must be specified as a string or 1242 as a plotly.grid_objs.Column object 1243 1244 Returns 1245 ------- 1246 str 1247 """ 1248 return self["sdsrc"] 1249 1250 @sdsrc.setter 1251 def sdsrc(self, val): 1252 self["sdsrc"] = val 1253 1254 # selected 1255 # -------- 1256 @property 1257 def selected(self): 1258 """ 1259 The 'selected' property is an instance of Selected 1260 that may be specified as: 1261 - An instance of :class:`plotly.graph_objs.box.Selected` 1262 - A dict of string/value properties that will be passed 1263 to the Selected constructor 1264 1265 Supported dict properties: 1266 1267 marker 1268 :class:`plotly.graph_objects.box.selected.Marke 1269 r` instance or dict with compatible properties 1270 1271 Returns 1272 ------- 1273 plotly.graph_objs.box.Selected 1274 """ 1275 return self["selected"] 1276 1277 @selected.setter 1278 def selected(self, val): 1279 self["selected"] = val 1280 1281 # selectedpoints 1282 # -------------- 1283 @property 1284 def selectedpoints(self): 1285 """ 1286 Array containing integer indices of selected points. Has an 1287 effect only for traces that support selections. Note that an 1288 empty array means an empty selection where the `unselected` are 1289 turned on for all points, whereas, any other non-array values 1290 means no selection all where the `selected` and `unselected` 1291 styles have no effect. 1292 1293 The 'selectedpoints' property accepts values of any type 1294 1295 Returns 1296 ------- 1297 Any 1298 """ 1299 return self["selectedpoints"] 1300 1301 @selectedpoints.setter 1302 def selectedpoints(self, val): 1303 self["selectedpoints"] = val 1304 1305 # showlegend 1306 # ---------- 1307 @property 1308 def showlegend(self): 1309 """ 1310 Determines whether or not an item corresponding to this trace 1311 is shown in the legend. 1312 1313 The 'showlegend' property must be specified as a bool 1314 (either True, or False) 1315 1316 Returns 1317 ------- 1318 bool 1319 """ 1320 return self["showlegend"] 1321 1322 @showlegend.setter 1323 def showlegend(self, val): 1324 self["showlegend"] = val 1325 1326 # stream 1327 # ------ 1328 @property 1329 def stream(self): 1330 """ 1331 The 'stream' property is an instance of Stream 1332 that may be specified as: 1333 - An instance of :class:`plotly.graph_objs.box.Stream` 1334 - A dict of string/value properties that will be passed 1335 to the Stream constructor 1336 1337 Supported dict properties: 1338 1339 maxpoints 1340 Sets the maximum number of points to keep on 1341 the plots from an incoming stream. If 1342 `maxpoints` is set to 50, only the newest 50 1343 points will be displayed on the plot. 1344 token 1345 The stream id number links a data trace on a 1346 plot with a stream. See https://chart- 1347 studio.plotly.com/settings for more details. 1348 1349 Returns 1350 ------- 1351 plotly.graph_objs.box.Stream 1352 """ 1353 return self["stream"] 1354 1355 @stream.setter 1356 def stream(self, val): 1357 self["stream"] = val 1358 1359 # text 1360 # ---- 1361 @property 1362 def text(self): 1363 """ 1364 Sets the text elements associated with each sample value. If a 1365 single string, the same string appears over all the data 1366 points. If an array of string, the items are mapped in order to 1367 the this trace's (x,y) coordinates. To be seen, trace 1368 `hoverinfo` must contain a "text" flag. 1369 1370 The 'text' property is a string and must be specified as: 1371 - A string 1372 - A number that will be converted to a string 1373 - A tuple, list, or one-dimensional numpy array of the above 1374 1375 Returns 1376 ------- 1377 str|numpy.ndarray 1378 """ 1379 return self["text"] 1380 1381 @text.setter 1382 def text(self, val): 1383 self["text"] = val 1384 1385 # textsrc 1386 # ------- 1387 @property 1388 def textsrc(self): 1389 """ 1390 Sets the source reference on Chart Studio Cloud for text . 1391 1392 The 'textsrc' property must be specified as a string or 1393 as a plotly.grid_objs.Column object 1394 1395 Returns 1396 ------- 1397 str 1398 """ 1399 return self["textsrc"] 1400 1401 @textsrc.setter 1402 def textsrc(self, val): 1403 self["textsrc"] = val 1404 1405 # uid 1406 # --- 1407 @property 1408 def uid(self): 1409 """ 1410 Assign an id to this trace, Use this to provide object 1411 constancy between traces during animations and transitions. 1412 1413 The 'uid' property is a string and must be specified as: 1414 - A string 1415 - A number that will be converted to a string 1416 1417 Returns 1418 ------- 1419 str 1420 """ 1421 return self["uid"] 1422 1423 @uid.setter 1424 def uid(self, val): 1425 self["uid"] = val 1426 1427 # uirevision 1428 # ---------- 1429 @property 1430 def uirevision(self): 1431 """ 1432 Controls persistence of some user-driven changes to the trace: 1433 `constraintrange` in `parcoords` traces, as well as some 1434 `editable: true` modifications such as `name` and 1435 `colorbar.title`. Defaults to `layout.uirevision`. Note that 1436 other user-driven trace attribute changes are controlled by 1437 `layout` attributes: `trace.visible` is controlled by 1438 `layout.legend.uirevision`, `selectedpoints` is controlled by 1439 `layout.selectionrevision`, and `colorbar.(x|y)` (accessible 1440 with `config: {editable: true}`) is controlled by 1441 `layout.editrevision`. Trace changes are tracked by `uid`, 1442 which only falls back on trace index if no `uid` is provided. 1443 So if your app can add/remove traces before the end of the 1444 `data` array, such that the same trace has a different index, 1445 you can still preserve user-driven changes if you give each 1446 trace a `uid` that stays with it as it moves. 1447 1448 The 'uirevision' property accepts values of any type 1449 1450 Returns 1451 ------- 1452 Any 1453 """ 1454 return self["uirevision"] 1455 1456 @uirevision.setter 1457 def uirevision(self, val): 1458 self["uirevision"] = val 1459 1460 # unselected 1461 # ---------- 1462 @property 1463 def unselected(self): 1464 """ 1465 The 'unselected' property is an instance of Unselected 1466 that may be specified as: 1467 - An instance of :class:`plotly.graph_objs.box.Unselected` 1468 - A dict of string/value properties that will be passed 1469 to the Unselected constructor 1470 1471 Supported dict properties: 1472 1473 marker 1474 :class:`plotly.graph_objects.box.unselected.Mar 1475 ker` instance or dict with compatible 1476 properties 1477 1478 Returns 1479 ------- 1480 plotly.graph_objs.box.Unselected 1481 """ 1482 return self["unselected"] 1483 1484 @unselected.setter 1485 def unselected(self, val): 1486 self["unselected"] = val 1487 1488 # upperfence 1489 # ---------- 1490 @property 1491 def upperfence(self): 1492 """ 1493 Sets the upper fence values. There should be as many items as 1494 the number of boxes desired. This attribute has effect only 1495 under the q1/median/q3 signature. If `upperfence` is not 1496 provided but a sample (in `y` or `x`) is set, we compute the 1497 lower as the last sample point above 1.5 times the IQR. 1498 1499 The 'upperfence' property is an array that may be specified as a tuple, 1500 list, numpy array, or pandas Series 1501 1502 Returns 1503 ------- 1504 numpy.ndarray 1505 """ 1506 return self["upperfence"] 1507 1508 @upperfence.setter 1509 def upperfence(self, val): 1510 self["upperfence"] = val 1511 1512 # upperfencesrc 1513 # ------------- 1514 @property 1515 def upperfencesrc(self): 1516 """ 1517 Sets the source reference on Chart Studio Cloud for upperfence 1518 . 1519 1520 The 'upperfencesrc' property must be specified as a string or 1521 as a plotly.grid_objs.Column object 1522 1523 Returns 1524 ------- 1525 str 1526 """ 1527 return self["upperfencesrc"] 1528 1529 @upperfencesrc.setter 1530 def upperfencesrc(self, val): 1531 self["upperfencesrc"] = val 1532 1533 # visible 1534 # ------- 1535 @property 1536 def visible(self): 1537 """ 1538 Determines whether or not this trace is visible. If 1539 "legendonly", the trace is not drawn, but can appear as a 1540 legend item (provided that the legend itself is visible). 1541 1542 The 'visible' property is an enumeration that may be specified as: 1543 - One of the following enumeration values: 1544 [True, False, 'legendonly'] 1545 1546 Returns 1547 ------- 1548 Any 1549 """ 1550 return self["visible"] 1551 1552 @visible.setter 1553 def visible(self, val): 1554 self["visible"] = val 1555 1556 # whiskerwidth 1557 # ------------ 1558 @property 1559 def whiskerwidth(self): 1560 """ 1561 Sets the width of the whiskers relative to the box' width. For 1562 example, with 1, the whiskers are as wide as the box(es). 1563 1564 The 'whiskerwidth' property is a number and may be specified as: 1565 - An int or float in the interval [0, 1] 1566 1567 Returns 1568 ------- 1569 int|float 1570 """ 1571 return self["whiskerwidth"] 1572 1573 @whiskerwidth.setter 1574 def whiskerwidth(self, val): 1575 self["whiskerwidth"] = val 1576 1577 # width 1578 # ----- 1579 @property 1580 def width(self): 1581 """ 1582 Sets the width of the box in data coordinate If 0 (default 1583 value) the width is automatically selected based on the 1584 positions of other box traces in the same subplot. 1585 1586 The 'width' property is a number and may be specified as: 1587 - An int or float in the interval [0, inf] 1588 1589 Returns 1590 ------- 1591 int|float 1592 """ 1593 return self["width"] 1594 1595 @width.setter 1596 def width(self, val): 1597 self["width"] = val 1598 1599 # x 1600 # - 1601 @property 1602 def x(self): 1603 """ 1604 Sets the x sample data or coordinates. See overview for more 1605 info. 1606 1607 The 'x' property is an array that may be specified as a tuple, 1608 list, numpy array, or pandas Series 1609 1610 Returns 1611 ------- 1612 numpy.ndarray 1613 """ 1614 return self["x"] 1615 1616 @x.setter 1617 def x(self, val): 1618 self["x"] = val 1619 1620 # x0 1621 # -- 1622 @property 1623 def x0(self): 1624 """ 1625 Sets the x coordinate for single-box traces or the starting 1626 coordinate for multi-box traces set using q1/median/q3. See 1627 overview for more info. 1628 1629 The 'x0' property accepts values of any type 1630 1631 Returns 1632 ------- 1633 Any 1634 """ 1635 return self["x0"] 1636 1637 @x0.setter 1638 def x0(self, val): 1639 self["x0"] = val 1640 1641 # xaxis 1642 # ----- 1643 @property 1644 def xaxis(self): 1645 """ 1646 Sets a reference between this trace's x coordinates and a 2D 1647 cartesian x axis. If "x" (the default value), the x coordinates 1648 refer to `layout.xaxis`. If "x2", the x coordinates refer to 1649 `layout.xaxis2`, and so on. 1650 1651 The 'xaxis' property is an identifier of a particular 1652 subplot, of type 'x', that may be specified as the string 'x' 1653 optionally followed by an integer >= 1 1654 (e.g. 'x', 'x1', 'x2', 'x3', etc.) 1655 1656 Returns 1657 ------- 1658 str 1659 """ 1660 return self["xaxis"] 1661 1662 @xaxis.setter 1663 def xaxis(self, val): 1664 self["xaxis"] = val 1665 1666 # xcalendar 1667 # --------- 1668 @property 1669 def xcalendar(self): 1670 """ 1671 Sets the calendar system to use with `x` date data. 1672 1673 The 'xcalendar' property is an enumeration that may be specified as: 1674 - One of the following enumeration values: 1675 ['gregorian', 'chinese', 'coptic', 'discworld', 1676 'ethiopian', 'hebrew', 'islamic', 'julian', 'mayan', 1677 'nanakshahi', 'nepali', 'persian', 'jalali', 'taiwan', 1678 'thai', 'ummalqura'] 1679 1680 Returns 1681 ------- 1682 Any 1683 """ 1684 return self["xcalendar"] 1685 1686 @xcalendar.setter 1687 def xcalendar(self, val): 1688 self["xcalendar"] = val 1689 1690 # xperiod 1691 # ------- 1692 @property 1693 def xperiod(self): 1694 """ 1695 Only relevant when the axis `type` is "date". Sets the period 1696 positioning in milliseconds or "M<n>" on the x axis. Special 1697 values in the form of "M<n>" could be used to declare the 1698 number of months. In this case `n` must be a positive integer. 1699 1700 The 'xperiod' property accepts values of any type 1701 1702 Returns 1703 ------- 1704 Any 1705 """ 1706 return self["xperiod"] 1707 1708 @xperiod.setter 1709 def xperiod(self, val): 1710 self["xperiod"] = val 1711 1712 # xperiod0 1713 # -------- 1714 @property 1715 def xperiod0(self): 1716 """ 1717 Only relevant when the axis `type` is "date". Sets the base for 1718 period positioning in milliseconds or date string on the x0 1719 axis. When `x0period` is round number of weeks, the `x0period0` 1720 by default would be on a Sunday i.e. 2000-01-02, otherwise it 1721 would be at 2000-01-01. 1722 1723 The 'xperiod0' property accepts values of any type 1724 1725 Returns 1726 ------- 1727 Any 1728 """ 1729 return self["xperiod0"] 1730 1731 @xperiod0.setter 1732 def xperiod0(self, val): 1733 self["xperiod0"] = val 1734 1735 # xperiodalignment 1736 # ---------------- 1737 @property 1738 def xperiodalignment(self): 1739 """ 1740 Only relevant when the axis `type` is "date". Sets the 1741 alignment of data points on the x axis. 1742 1743 The 'xperiodalignment' property is an enumeration that may be specified as: 1744 - One of the following enumeration values: 1745 ['start', 'middle', 'end'] 1746 1747 Returns 1748 ------- 1749 Any 1750 """ 1751 return self["xperiodalignment"] 1752 1753 @xperiodalignment.setter 1754 def xperiodalignment(self, val): 1755 self["xperiodalignment"] = val 1756 1757 # xsrc 1758 # ---- 1759 @property 1760 def xsrc(self): 1761 """ 1762 Sets the source reference on Chart Studio Cloud for x . 1763 1764 The 'xsrc' property must be specified as a string or 1765 as a plotly.grid_objs.Column object 1766 1767 Returns 1768 ------- 1769 str 1770 """ 1771 return self["xsrc"] 1772 1773 @xsrc.setter 1774 def xsrc(self, val): 1775 self["xsrc"] = val 1776 1777 # y 1778 # - 1779 @property 1780 def y(self): 1781 """ 1782 Sets the y sample data or coordinates. See overview for more 1783 info. 1784 1785 The 'y' property is an array that may be specified as a tuple, 1786 list, numpy array, or pandas Series 1787 1788 Returns 1789 ------- 1790 numpy.ndarray 1791 """ 1792 return self["y"] 1793 1794 @y.setter 1795 def y(self, val): 1796 self["y"] = val 1797 1798 # y0 1799 # -- 1800 @property 1801 def y0(self): 1802 """ 1803 Sets the y coordinate for single-box traces or the starting 1804 coordinate for multi-box traces set using q1/median/q3. See 1805 overview for more info. 1806 1807 The 'y0' property accepts values of any type 1808 1809 Returns 1810 ------- 1811 Any 1812 """ 1813 return self["y0"] 1814 1815 @y0.setter 1816 def y0(self, val): 1817 self["y0"] = val 1818 1819 # yaxis 1820 # ----- 1821 @property 1822 def yaxis(self): 1823 """ 1824 Sets a reference between this trace's y coordinates and a 2D 1825 cartesian y axis. If "y" (the default value), the y coordinates 1826 refer to `layout.yaxis`. If "y2", the y coordinates refer to 1827 `layout.yaxis2`, and so on. 1828 1829 The 'yaxis' property is an identifier of a particular 1830 subplot, of type 'y', that may be specified as the string 'y' 1831 optionally followed by an integer >= 1 1832 (e.g. 'y', 'y1', 'y2', 'y3', etc.) 1833 1834 Returns 1835 ------- 1836 str 1837 """ 1838 return self["yaxis"] 1839 1840 @yaxis.setter 1841 def yaxis(self, val): 1842 self["yaxis"] = val 1843 1844 # ycalendar 1845 # --------- 1846 @property 1847 def ycalendar(self): 1848 """ 1849 Sets the calendar system to use with `y` date data. 1850 1851 The 'ycalendar' property is an enumeration that may be specified as: 1852 - One of the following enumeration values: 1853 ['gregorian', 'chinese', 'coptic', 'discworld', 1854 'ethiopian', 'hebrew', 'islamic', 'julian', 'mayan', 1855 'nanakshahi', 'nepali', 'persian', 'jalali', 'taiwan', 1856 'thai', 'ummalqura'] 1857 1858 Returns 1859 ------- 1860 Any 1861 """ 1862 return self["ycalendar"] 1863 1864 @ycalendar.setter 1865 def ycalendar(self, val): 1866 self["ycalendar"] = val 1867 1868 # yperiod 1869 # ------- 1870 @property 1871 def yperiod(self): 1872 """ 1873 Only relevant when the axis `type` is "date". Sets the period 1874 positioning in milliseconds or "M<n>" on the y axis. Special 1875 values in the form of "M<n>" could be used to declare the 1876 number of months. In this case `n` must be a positive integer. 1877 1878 The 'yperiod' property accepts values of any type 1879 1880 Returns 1881 ------- 1882 Any 1883 """ 1884 return self["yperiod"] 1885 1886 @yperiod.setter 1887 def yperiod(self, val): 1888 self["yperiod"] = val 1889 1890 # yperiod0 1891 # -------- 1892 @property 1893 def yperiod0(self): 1894 """ 1895 Only relevant when the axis `type` is "date". Sets the base for 1896 period positioning in milliseconds or date string on the y0 1897 axis. When `y0period` is round number of weeks, the `y0period0` 1898 by default would be on a Sunday i.e. 2000-01-02, otherwise it 1899 would be at 2000-01-01. 1900 1901 The 'yperiod0' property accepts values of any type 1902 1903 Returns 1904 ------- 1905 Any 1906 """ 1907 return self["yperiod0"] 1908 1909 @yperiod0.setter 1910 def yperiod0(self, val): 1911 self["yperiod0"] = val 1912 1913 # yperiodalignment 1914 # ---------------- 1915 @property 1916 def yperiodalignment(self): 1917 """ 1918 Only relevant when the axis `type` is "date". Sets the 1919 alignment of data points on the y axis. 1920 1921 The 'yperiodalignment' property is an enumeration that may be specified as: 1922 - One of the following enumeration values: 1923 ['start', 'middle', 'end'] 1924 1925 Returns 1926 ------- 1927 Any 1928 """ 1929 return self["yperiodalignment"] 1930 1931 @yperiodalignment.setter 1932 def yperiodalignment(self, val): 1933 self["yperiodalignment"] = val 1934 1935 # ysrc 1936 # ---- 1937 @property 1938 def ysrc(self): 1939 """ 1940 Sets the source reference on Chart Studio Cloud for y . 1941 1942 The 'ysrc' property must be specified as a string or 1943 as a plotly.grid_objs.Column object 1944 1945 Returns 1946 ------- 1947 str 1948 """ 1949 return self["ysrc"] 1950 1951 @ysrc.setter 1952 def ysrc(self, val): 1953 self["ysrc"] = val 1954 1955 # type 1956 # ---- 1957 @property 1958 def type(self): 1959 return self._props["type"] 1960 1961 # Self properties description 1962 # --------------------------- 1963 @property 1964 def _prop_descriptions(self): 1965 return """\ 1966 alignmentgroup 1967 Set several traces linked to the same position axis or 1968 matching axes to the same alignmentgroup. This controls 1969 whether bars compute their positional range dependently 1970 or independently. 1971 boxmean 1972 If True, the mean of the box(es)' underlying 1973 distribution is drawn as a dashed line inside the 1974 box(es). If "sd" the standard deviation is also drawn. 1975 Defaults to True when `mean` is set. Defaults to "sd" 1976 when `sd` is set Otherwise defaults to False. 1977 boxpoints 1978 If "outliers", only the sample points lying outside the 1979 whiskers are shown If "suspectedoutliers", the outlier 1980 points are shown and points either less than 4*Q1-3*Q3 1981 or greater than 4*Q3-3*Q1 are highlighted (see 1982 `outliercolor`) If "all", all sample points are shown 1983 If False, only the box(es) are shown with no sample 1984 points Defaults to "suspectedoutliers" when 1985 `marker.outliercolor` or `marker.line.outliercolor` is 1986 set. Defaults to "all" under the q1/median/q3 1987 signature. Otherwise defaults to "outliers". 1988 customdata 1989 Assigns extra data each datum. This may be useful when 1990 listening to hover, click and selection events. Note 1991 that, "scatter" traces also appends customdata items in 1992 the markers DOM elements 1993 customdatasrc 1994 Sets the source reference on Chart Studio Cloud for 1995 customdata . 1996 dx 1997 Sets the x coordinate step for multi-box traces set 1998 using q1/median/q3. 1999 dy 2000 Sets the y coordinate step for multi-box traces set 2001 using q1/median/q3. 2002 fillcolor 2003 Sets the fill color. Defaults to a half-transparent 2004 variant of the line color, marker color, or marker line 2005 color, whichever is available. 2006 hoverinfo 2007 Determines which trace information appear on hover. If 2008 `none` or `skip` are set, no information is displayed 2009 upon hovering. But, if `none` is set, click and hover 2010 events are still fired. 2011 hoverinfosrc 2012 Sets the source reference on Chart Studio Cloud for 2013 hoverinfo . 2014 hoverlabel 2015 :class:`plotly.graph_objects.box.Hoverlabel` instance 2016 or dict with compatible properties 2017 hoveron 2018 Do the hover effects highlight individual boxes or 2019 sample points or both? 2020 hovertemplate 2021 Template string used for rendering the information that 2022 appear on hover box. Note that this will override 2023 `hoverinfo`. Variables are inserted using %{variable}, 2024 for example "y: %{y}". Numbers are formatted using 2025 d3-format's syntax %{variable:d3-format}, for example 2026 "Price: %{y:$.2f}". https://github.com/d3/d3-3.x-api- 2027 reference/blob/master/Formatting.md#d3_format for 2028 details on the formatting syntax. Dates are formatted 2029 using d3-time-format's syntax %{variable|d3-time- 2030 format}, for example "Day: %{2019-01-01|%A}". 2031 https://github.com/d3/d3-time-format#locale_format for 2032 details on the date formatting syntax. The variables 2033 available in `hovertemplate` are the ones emitted as 2034 event data described at this link 2035 https://plotly.com/javascript/plotlyjs-events/#event- 2036 data. Additionally, every attributes that can be 2037 specified per-point (the ones that are `arrayOk: true`) 2038 are available. Anything contained in tag `<extra>` is 2039 displayed in the secondary box, for example 2040 "<extra>{fullData.name}</extra>". To hide the secondary 2041 box completely, use an empty tag `<extra></extra>`. 2042 hovertemplatesrc 2043 Sets the source reference on Chart Studio Cloud for 2044 hovertemplate . 2045 hovertext 2046 Same as `text`. 2047 hovertextsrc 2048 Sets the source reference on Chart Studio Cloud for 2049 hovertext . 2050 ids 2051 Assigns id labels to each datum. These ids for object 2052 constancy of data points during animation. Should be an 2053 array of strings, not numbers or any other type. 2054 idssrc 2055 Sets the source reference on Chart Studio Cloud for 2056 ids . 2057 jitter 2058 Sets the amount of jitter in the sample points drawn. 2059 If 0, the sample points align along the distribution 2060 axis. If 1, the sample points are drawn in a random 2061 jitter of width equal to the width of the box(es). 2062 legendgroup 2063 Sets the legend group for this trace. Traces part of 2064 the same legend group hide/show at the same time when 2065 toggling legend items. 2066 line 2067 :class:`plotly.graph_objects.box.Line` instance or dict 2068 with compatible properties 2069 lowerfence 2070 Sets the lower fence values. There should be as many 2071 items as the number of boxes desired. This attribute 2072 has effect only under the q1/median/q3 signature. If 2073 `lowerfence` is not provided but a sample (in `y` or 2074 `x`) is set, we compute the lower as the last sample 2075 point below 1.5 times the IQR. 2076 lowerfencesrc 2077 Sets the source reference on Chart Studio Cloud for 2078 lowerfence . 2079 marker 2080 :class:`plotly.graph_objects.box.Marker` instance or 2081 dict with compatible properties 2082 mean 2083 Sets the mean values. There should be as many items as 2084 the number of boxes desired. This attribute has effect 2085 only under the q1/median/q3 signature. If `mean` is not 2086 provided but a sample (in `y` or `x`) is set, we 2087 compute the mean for each box using the sample values. 2088 meansrc 2089 Sets the source reference on Chart Studio Cloud for 2090 mean . 2091 median 2092 Sets the median values. There should be as many items 2093 as the number of boxes desired. 2094 mediansrc 2095 Sets the source reference on Chart Studio Cloud for 2096 median . 2097 meta 2098 Assigns extra meta information associated with this 2099 trace that can be used in various text attributes. 2100 Attributes such as trace `name`, graph, axis and 2101 colorbar `title.text`, annotation `text` 2102 `rangeselector`, `updatemenues` and `sliders` `label` 2103 text all support `meta`. To access the trace `meta` 2104 values in an attribute in the same trace, simply use 2105 `%{meta[i]}` where `i` is the index or key of the 2106 `meta` item in question. To access trace `meta` in 2107 layout attributes, use `%{data[n[.meta[i]}` where `i` 2108 is the index or key of the `meta` and `n` is the trace 2109 index. 2110 metasrc 2111 Sets the source reference on Chart Studio Cloud for 2112 meta . 2113 name 2114 Sets the trace name. The trace name appear as the 2115 legend item and on hover. For box traces, the name will 2116 also be used for the position coordinate, if `x` and 2117 `x0` (`y` and `y0` if horizontal) are missing and the 2118 position axis is categorical 2119 notched 2120 Determines whether or not notches are drawn. Notches 2121 displays a confidence interval around the median. We 2122 compute the confidence interval as median +/- 1.57 * 2123 IQR / sqrt(N), where IQR is the interquartile range and 2124 N is the sample size. If two boxes' notches do not 2125 overlap there is 95% confidence their medians differ. 2126 See https://sites.google.com/site/davidsstatistics/home 2127 /notched-box-plots for more info. Defaults to False 2128 unless `notchwidth` or `notchspan` is set. 2129 notchspan 2130 Sets the notch span from the boxes' `median` values. 2131 There should be as many items as the number of boxes 2132 desired. This attribute has effect only under the 2133 q1/median/q3 signature. If `notchspan` is not provided 2134 but a sample (in `y` or `x`) is set, we compute it as 2135 1.57 * IQR / sqrt(N), where N is the sample size. 2136 notchspansrc 2137 Sets the source reference on Chart Studio Cloud for 2138 notchspan . 2139 notchwidth 2140 Sets the width of the notches relative to the box' 2141 width. For example, with 0, the notches are as wide as 2142 the box(es). 2143 offsetgroup 2144 Set several traces linked to the same position axis or 2145 matching axes to the same offsetgroup where bars of the 2146 same position coordinate will line up. 2147 opacity 2148 Sets the opacity of the trace. 2149 orientation 2150 Sets the orientation of the box(es). If "v" ("h"), the 2151 distribution is visualized along the vertical 2152 (horizontal). 2153 pointpos 2154 Sets the position of the sample points in relation to 2155 the box(es). If 0, the sample points are places over 2156 the center of the box(es). Positive (negative) values 2157 correspond to positions to the right (left) for 2158 vertical boxes and above (below) for horizontal boxes 2159 q1 2160 Sets the Quartile 1 values. There should be as many 2161 items as the number of boxes desired. 2162 q1src 2163 Sets the source reference on Chart Studio Cloud for q1 2164 . 2165 q3 2166 Sets the Quartile 3 values. There should be as many 2167 items as the number of boxes desired. 2168 q3src 2169 Sets the source reference on Chart Studio Cloud for q3 2170 . 2171 quartilemethod 2172 Sets the method used to compute the sample's Q1 and Q3 2173 quartiles. The "linear" method uses the 25th percentile 2174 for Q1 and 75th percentile for Q3 as computed using 2175 method #10 (listed on http://www.amstat.org/publication 2176 s/jse/v14n3/langford.html). The "exclusive" method uses 2177 the median to divide the ordered dataset into two 2178 halves if the sample is odd, it does not include the 2179 median in either half - Q1 is then the median of the 2180 lower half and Q3 the median of the upper half. The 2181 "inclusive" method also uses the median to divide the 2182 ordered dataset into two halves but if the sample is 2183 odd, it includes the median in both halves - Q1 is then 2184 the median of the lower half and Q3 the median of the 2185 upper half. 2186 sd 2187 Sets the standard deviation values. There should be as 2188 many items as the number of boxes desired. This 2189 attribute has effect only under the q1/median/q3 2190 signature. If `sd` is not provided but a sample (in `y` 2191 or `x`) is set, we compute the standard deviation for 2192 each box using the sample values. 2193 sdsrc 2194 Sets the source reference on Chart Studio Cloud for sd 2195 . 2196 selected 2197 :class:`plotly.graph_objects.box.Selected` instance or 2198 dict with compatible properties 2199 selectedpoints 2200 Array containing integer indices of selected points. 2201 Has an effect only for traces that support selections. 2202 Note that an empty array means an empty selection where 2203 the `unselected` are turned on for all points, whereas, 2204 any other non-array values means no selection all where 2205 the `selected` and `unselected` styles have no effect. 2206 showlegend 2207 Determines whether or not an item corresponding to this 2208 trace is shown in the legend. 2209 stream 2210 :class:`plotly.graph_objects.box.Stream` instance or 2211 dict with compatible properties 2212 text 2213 Sets the text elements associated with each sample 2214 value. If a single string, the same string appears over 2215 all the data points. If an array of string, the items 2216 are mapped in order to the this trace's (x,y) 2217 coordinates. To be seen, trace `hoverinfo` must contain 2218 a "text" flag. 2219 textsrc 2220 Sets the source reference on Chart Studio Cloud for 2221 text . 2222 uid 2223 Assign an id to this trace, Use this to provide object 2224 constancy between traces during animations and 2225 transitions. 2226 uirevision 2227 Controls persistence of some user-driven changes to the 2228 trace: `constraintrange` in `parcoords` traces, as well 2229 as some `editable: true` modifications such as `name` 2230 and `colorbar.title`. Defaults to `layout.uirevision`. 2231 Note that other user-driven trace attribute changes are 2232 controlled by `layout` attributes: `trace.visible` is 2233 controlled by `layout.legend.uirevision`, 2234 `selectedpoints` is controlled by 2235 `layout.selectionrevision`, and `colorbar.(x|y)` 2236 (accessible with `config: {editable: true}`) is 2237 controlled by `layout.editrevision`. Trace changes are 2238 tracked by `uid`, which only falls back on trace index 2239 if no `uid` is provided. So if your app can add/remove 2240 traces before the end of the `data` array, such that 2241 the same trace has a different index, you can still 2242 preserve user-driven changes if you give each trace a 2243 `uid` that stays with it as it moves. 2244 unselected 2245 :class:`plotly.graph_objects.box.Unselected` instance 2246 or dict with compatible properties 2247 upperfence 2248 Sets the upper fence values. There should be as many 2249 items as the number of boxes desired. This attribute 2250 has effect only under the q1/median/q3 signature. If 2251 `upperfence` is not provided but a sample (in `y` or 2252 `x`) is set, we compute the lower as the last sample 2253 point above 1.5 times the IQR. 2254 upperfencesrc 2255 Sets the source reference on Chart Studio Cloud for 2256 upperfence . 2257 visible 2258 Determines whether or not this trace is visible. If 2259 "legendonly", the trace is not drawn, but can appear as 2260 a legend item (provided that the legend itself is 2261 visible). 2262 whiskerwidth 2263 Sets the width of the whiskers relative to the box' 2264 width. For example, with 1, the whiskers are as wide as 2265 the box(es). 2266 width 2267 Sets the width of the box in data coordinate If 0 2268 (default value) the width is automatically selected 2269 based on the positions of other box traces in the same 2270 subplot. 2271 x 2272 Sets the x sample data or coordinates. See overview for 2273 more info. 2274 x0 2275 Sets the x coordinate for single-box traces or the 2276 starting coordinate for multi-box traces set using 2277 q1/median/q3. See overview for more info. 2278 xaxis 2279 Sets a reference between this trace's x coordinates and 2280 a 2D cartesian x axis. If "x" (the default value), the 2281 x coordinates refer to `layout.xaxis`. If "x2", the x 2282 coordinates refer to `layout.xaxis2`, and so on. 2283 xcalendar 2284 Sets the calendar system to use with `x` date data. 2285 xperiod 2286 Only relevant when the axis `type` is "date". Sets the 2287 period positioning in milliseconds or "M<n>" on the x 2288 axis. Special values in the form of "M<n>" could be 2289 used to declare the number of months. In this case `n` 2290 must be a positive integer. 2291 xperiod0 2292 Only relevant when the axis `type` is "date". Sets the 2293 base for period positioning in milliseconds or date 2294 string on the x0 axis. When `x0period` is round number 2295 of weeks, the `x0period0` by default would be on a 2296 Sunday i.e. 2000-01-02, otherwise it would be at 2297 2000-01-01. 2298 xperiodalignment 2299 Only relevant when the axis `type` is "date". Sets the 2300 alignment of data points on the x axis. 2301 xsrc 2302 Sets the source reference on Chart Studio Cloud for x 2303 . 2304 y 2305 Sets the y sample data or coordinates. See overview for 2306 more info. 2307 y0 2308 Sets the y coordinate for single-box traces or the 2309 starting coordinate for multi-box traces set using 2310 q1/median/q3. See overview for more info. 2311 yaxis 2312 Sets a reference between this trace's y coordinates and 2313 a 2D cartesian y axis. If "y" (the default value), the 2314 y coordinates refer to `layout.yaxis`. If "y2", the y 2315 coordinates refer to `layout.yaxis2`, and so on. 2316 ycalendar 2317 Sets the calendar system to use with `y` date data. 2318 yperiod 2319 Only relevant when the axis `type` is "date". Sets the 2320 period positioning in milliseconds or "M<n>" on the y 2321 axis. Special values in the form of "M<n>" could be 2322 used to declare the number of months. In this case `n` 2323 must be a positive integer. 2324 yperiod0 2325 Only relevant when the axis `type` is "date". Sets the 2326 base for period positioning in milliseconds or date 2327 string on the y0 axis. When `y0period` is round number 2328 of weeks, the `y0period0` by default would be on a 2329 Sunday i.e. 2000-01-02, otherwise it would be at 2330 2000-01-01. 2331 yperiodalignment 2332 Only relevant when the axis `type` is "date". Sets the 2333 alignment of data points on the y axis. 2334 ysrc 2335 Sets the source reference on Chart Studio Cloud for y 2336 . 2337 """ 2338 2339 def __init__( 2340 self, 2341 arg=None, 2342 alignmentgroup=None, 2343 boxmean=None, 2344 boxpoints=None, 2345 customdata=None, 2346 customdatasrc=None, 2347 dx=None, 2348 dy=None, 2349 fillcolor=None, 2350 hoverinfo=None, 2351 hoverinfosrc=None, 2352 hoverlabel=None, 2353 hoveron=None, 2354 hovertemplate=None, 2355 hovertemplatesrc=None, 2356 hovertext=None, 2357 hovertextsrc=None, 2358 ids=None, 2359 idssrc=None, 2360 jitter=None, 2361 legendgroup=None, 2362 line=None, 2363 lowerfence=None, 2364 lowerfencesrc=None, 2365 marker=None, 2366 mean=None, 2367 meansrc=None, 2368 median=None, 2369 mediansrc=None, 2370 meta=None, 2371 metasrc=None, 2372 name=None, 2373 notched=None, 2374 notchspan=None, 2375 notchspansrc=None, 2376 notchwidth=None, 2377 offsetgroup=None, 2378 opacity=None, 2379 orientation=None, 2380 pointpos=None, 2381 q1=None, 2382 q1src=None, 2383 q3=None, 2384 q3src=None, 2385 quartilemethod=None, 2386 sd=None, 2387 sdsrc=None, 2388 selected=None, 2389 selectedpoints=None, 2390 showlegend=None, 2391 stream=None, 2392 text=None, 2393 textsrc=None, 2394 uid=None, 2395 uirevision=None, 2396 unselected=None, 2397 upperfence=None, 2398 upperfencesrc=None, 2399 visible=None, 2400 whiskerwidth=None, 2401 width=None, 2402 x=None, 2403 x0=None, 2404 xaxis=None, 2405 xcalendar=None, 2406 xperiod=None, 2407 xperiod0=None, 2408 xperiodalignment=None, 2409 xsrc=None, 2410 y=None, 2411 y0=None, 2412 yaxis=None, 2413 ycalendar=None, 2414 yperiod=None, 2415 yperiod0=None, 2416 yperiodalignment=None, 2417 ysrc=None, 2418 **kwargs 2419 ): 2420 """ 2421 Construct a new Box object 2422 2423 Each box spans from quartile 1 (Q1) to quartile 3 (Q3). The 2424 second quartile (Q2, i.e. the median) is marked by a line 2425 inside the box. The fences grow outward from the boxes' edges, 2426 by default they span +/- 1.5 times the interquartile range 2427 (IQR: Q3-Q1), The sample mean and standard deviation as well as 2428 notches and the sample, outlier and suspected outliers points 2429 can be optionally added to the box plot. The values and 2430 positions corresponding to each boxes can be input using two 2431 signatures. The first signature expects users to supply the 2432 sample values in the `y` data array for vertical boxes (`x` for 2433 horizontal boxes). By supplying an `x` (`y`) array, one box per 2434 distinct `x` (`y`) value is drawn If no `x` (`y`) list is 2435 provided, a single box is drawn. In this case, the box is 2436 positioned with the trace `name` or with `x0` (`y0`) if 2437 provided. The second signature expects users to supply the 2438 boxes corresponding Q1, median and Q3 statistics in the `q1`, 2439 `median` and `q3` data arrays respectively. Other box features 2440 relying on statistics namely `lowerfence`, `upperfence`, 2441 `notchspan` can be set directly by the users. To have plotly 2442 compute them or to show sample points besides the boxes, users 2443 can set the `y` data array for vertical boxes (`x` for 2444 horizontal boxes) to a 2D array with the outer length 2445 corresponding to the number of boxes in the traces and the 2446 inner length corresponding the sample size. 2447 2448 Parameters 2449 ---------- 2450 arg 2451 dict of properties compatible with this constructor or 2452 an instance of :class:`plotly.graph_objs.Box` 2453 alignmentgroup 2454 Set several traces linked to the same position axis or 2455 matching axes to the same alignmentgroup. This controls 2456 whether bars compute their positional range dependently 2457 or independently. 2458 boxmean 2459 If True, the mean of the box(es)' underlying 2460 distribution is drawn as a dashed line inside the 2461 box(es). If "sd" the standard deviation is also drawn. 2462 Defaults to True when `mean` is set. Defaults to "sd" 2463 when `sd` is set Otherwise defaults to False. 2464 boxpoints 2465 If "outliers", only the sample points lying outside the 2466 whiskers are shown If "suspectedoutliers", the outlier 2467 points are shown and points either less than 4*Q1-3*Q3 2468 or greater than 4*Q3-3*Q1 are highlighted (see 2469 `outliercolor`) If "all", all sample points are shown 2470 If False, only the box(es) are shown with no sample 2471 points Defaults to "suspectedoutliers" when 2472 `marker.outliercolor` or `marker.line.outliercolor` is 2473 set. Defaults to "all" under the q1/median/q3 2474 signature. Otherwise defaults to "outliers". 2475 customdata 2476 Assigns extra data each datum. This may be useful when 2477 listening to hover, click and selection events. Note 2478 that, "scatter" traces also appends customdata items in 2479 the markers DOM elements 2480 customdatasrc 2481 Sets the source reference on Chart Studio Cloud for 2482 customdata . 2483 dx 2484 Sets the x coordinate step for multi-box traces set 2485 using q1/median/q3. 2486 dy 2487 Sets the y coordinate step for multi-box traces set 2488 using q1/median/q3. 2489 fillcolor 2490 Sets the fill color. Defaults to a half-transparent 2491 variant of the line color, marker color, or marker line 2492 color, whichever is available. 2493 hoverinfo 2494 Determines which trace information appear on hover. If 2495 `none` or `skip` are set, no information is displayed 2496 upon hovering. But, if `none` is set, click and hover 2497 events are still fired. 2498 hoverinfosrc 2499 Sets the source reference on Chart Studio Cloud for 2500 hoverinfo . 2501 hoverlabel 2502 :class:`plotly.graph_objects.box.Hoverlabel` instance 2503 or dict with compatible properties 2504 hoveron 2505 Do the hover effects highlight individual boxes or 2506 sample points or both? 2507 hovertemplate 2508 Template string used for rendering the information that 2509 appear on hover box. Note that this will override 2510 `hoverinfo`. Variables are inserted using %{variable}, 2511 for example "y: %{y}". Numbers are formatted using 2512 d3-format's syntax %{variable:d3-format}, for example 2513 "Price: %{y:$.2f}". https://github.com/d3/d3-3.x-api- 2514 reference/blob/master/Formatting.md#d3_format for 2515 details on the formatting syntax. Dates are formatted 2516 using d3-time-format's syntax %{variable|d3-time- 2517 format}, for example "Day: %{2019-01-01|%A}". 2518 https://github.com/d3/d3-time-format#locale_format for 2519 details on the date formatting syntax. The variables 2520 available in `hovertemplate` are the ones emitted as 2521 event data described at this link 2522 https://plotly.com/javascript/plotlyjs-events/#event- 2523 data. Additionally, every attributes that can be 2524 specified per-point (the ones that are `arrayOk: true`) 2525 are available. Anything contained in tag `<extra>` is 2526 displayed in the secondary box, for example 2527 "<extra>{fullData.name}</extra>". To hide the secondary 2528 box completely, use an empty tag `<extra></extra>`. 2529 hovertemplatesrc 2530 Sets the source reference on Chart Studio Cloud for 2531 hovertemplate . 2532 hovertext 2533 Same as `text`. 2534 hovertextsrc 2535 Sets the source reference on Chart Studio Cloud for 2536 hovertext . 2537 ids 2538 Assigns id labels to each datum. These ids for object 2539 constancy of data points during animation. Should be an 2540 array of strings, not numbers or any other type. 2541 idssrc 2542 Sets the source reference on Chart Studio Cloud for 2543 ids . 2544 jitter 2545 Sets the amount of jitter in the sample points drawn. 2546 If 0, the sample points align along the distribution 2547 axis. If 1, the sample points are drawn in a random 2548 jitter of width equal to the width of the box(es). 2549 legendgroup 2550 Sets the legend group for this trace. Traces part of 2551 the same legend group hide/show at the same time when 2552 toggling legend items. 2553 line 2554 :class:`plotly.graph_objects.box.Line` instance or dict 2555 with compatible properties 2556 lowerfence 2557 Sets the lower fence values. There should be as many 2558 items as the number of boxes desired. This attribute 2559 has effect only under the q1/median/q3 signature. If 2560 `lowerfence` is not provided but a sample (in `y` or 2561 `x`) is set, we compute the lower as the last sample 2562 point below 1.5 times the IQR. 2563 lowerfencesrc 2564 Sets the source reference on Chart Studio Cloud for 2565 lowerfence . 2566 marker 2567 :class:`plotly.graph_objects.box.Marker` instance or 2568 dict with compatible properties 2569 mean 2570 Sets the mean values. There should be as many items as 2571 the number of boxes desired. This attribute has effect 2572 only under the q1/median/q3 signature. If `mean` is not 2573 provided but a sample (in `y` or `x`) is set, we 2574 compute the mean for each box using the sample values. 2575 meansrc 2576 Sets the source reference on Chart Studio Cloud for 2577 mean . 2578 median 2579 Sets the median values. There should be as many items 2580 as the number of boxes desired. 2581 mediansrc 2582 Sets the source reference on Chart Studio Cloud for 2583 median . 2584 meta 2585 Assigns extra meta information associated with this 2586 trace that can be used in various text attributes. 2587 Attributes such as trace `name`, graph, axis and 2588 colorbar `title.text`, annotation `text` 2589 `rangeselector`, `updatemenues` and `sliders` `label` 2590 text all support `meta`. To access the trace `meta` 2591 values in an attribute in the same trace, simply use 2592 `%{meta[i]}` where `i` is the index or key of the 2593 `meta` item in question. To access trace `meta` in 2594 layout attributes, use `%{data[n[.meta[i]}` where `i` 2595 is the index or key of the `meta` and `n` is the trace 2596 index. 2597 metasrc 2598 Sets the source reference on Chart Studio Cloud for 2599 meta . 2600 name 2601 Sets the trace name. The trace name appear as the 2602 legend item and on hover. For box traces, the name will 2603 also be used for the position coordinate, if `x` and 2604 `x0` (`y` and `y0` if horizontal) are missing and the 2605 position axis is categorical 2606 notched 2607 Determines whether or not notches are drawn. Notches 2608 displays a confidence interval around the median. We 2609 compute the confidence interval as median +/- 1.57 * 2610 IQR / sqrt(N), where IQR is the interquartile range and 2611 N is the sample size. If two boxes' notches do not 2612 overlap there is 95% confidence their medians differ. 2613 See https://sites.google.com/site/davidsstatistics/home 2614 /notched-box-plots for more info. Defaults to False 2615 unless `notchwidth` or `notchspan` is set. 2616 notchspan 2617 Sets the notch span from the boxes' `median` values. 2618 There should be as many items as the number of boxes 2619 desired. This attribute has effect only under the 2620 q1/median/q3 signature. If `notchspan` is not provided 2621 but a sample (in `y` or `x`) is set, we compute it as 2622 1.57 * IQR / sqrt(N), where N is the sample size. 2623 notchspansrc 2624 Sets the source reference on Chart Studio Cloud for 2625 notchspan . 2626 notchwidth 2627 Sets the width of the notches relative to the box' 2628 width. For example, with 0, the notches are as wide as 2629 the box(es). 2630 offsetgroup 2631 Set several traces linked to the same position axis or 2632 matching axes to the same offsetgroup where bars of the 2633 same position coordinate will line up. 2634 opacity 2635 Sets the opacity of the trace. 2636 orientation 2637 Sets the orientation of the box(es). If "v" ("h"), the 2638 distribution is visualized along the vertical 2639 (horizontal). 2640 pointpos 2641 Sets the position of the sample points in relation to 2642 the box(es). If 0, the sample points are places over 2643 the center of the box(es). Positive (negative) values 2644 correspond to positions to the right (left) for 2645 vertical boxes and above (below) for horizontal boxes 2646 q1 2647 Sets the Quartile 1 values. There should be as many 2648 items as the number of boxes desired. 2649 q1src 2650 Sets the source reference on Chart Studio Cloud for q1 2651 . 2652 q3 2653 Sets the Quartile 3 values. There should be as many 2654 items as the number of boxes desired. 2655 q3src 2656 Sets the source reference on Chart Studio Cloud for q3 2657 . 2658 quartilemethod 2659 Sets the method used to compute the sample's Q1 and Q3 2660 quartiles. The "linear" method uses the 25th percentile 2661 for Q1 and 75th percentile for Q3 as computed using 2662 method #10 (listed on http://www.amstat.org/publication 2663 s/jse/v14n3/langford.html). The "exclusive" method uses 2664 the median to divide the ordered dataset into two 2665 halves if the sample is odd, it does not include the 2666 median in either half - Q1 is then the median of the 2667 lower half and Q3 the median of the upper half. The 2668 "inclusive" method also uses the median to divide the 2669 ordered dataset into two halves but if the sample is 2670 odd, it includes the median in both halves - Q1 is then 2671 the median of the lower half and Q3 the median of the 2672 upper half. 2673 sd 2674 Sets the standard deviation values. There should be as 2675 many items as the number of boxes desired. This 2676 attribute has effect only under the q1/median/q3 2677 signature. If `sd` is not provided but a sample (in `y` 2678 or `x`) is set, we compute the standard deviation for 2679 each box using the sample values. 2680 sdsrc 2681 Sets the source reference on Chart Studio Cloud for sd 2682 . 2683 selected 2684 :class:`plotly.graph_objects.box.Selected` instance or 2685 dict with compatible properties 2686 selectedpoints 2687 Array containing integer indices of selected points. 2688 Has an effect only for traces that support selections. 2689 Note that an empty array means an empty selection where 2690 the `unselected` are turned on for all points, whereas, 2691 any other non-array values means no selection all where 2692 the `selected` and `unselected` styles have no effect. 2693 showlegend 2694 Determines whether or not an item corresponding to this 2695 trace is shown in the legend. 2696 stream 2697 :class:`plotly.graph_objects.box.Stream` instance or 2698 dict with compatible properties 2699 text 2700 Sets the text elements associated with each sample 2701 value. If a single string, the same string appears over 2702 all the data points. If an array of string, the items 2703 are mapped in order to the this trace's (x,y) 2704 coordinates. To be seen, trace `hoverinfo` must contain 2705 a "text" flag. 2706 textsrc 2707 Sets the source reference on Chart Studio Cloud for 2708 text . 2709 uid 2710 Assign an id to this trace, Use this to provide object 2711 constancy between traces during animations and 2712 transitions. 2713 uirevision 2714 Controls persistence of some user-driven changes to the 2715 trace: `constraintrange` in `parcoords` traces, as well 2716 as some `editable: true` modifications such as `name` 2717 and `colorbar.title`. Defaults to `layout.uirevision`. 2718 Note that other user-driven trace attribute changes are 2719 controlled by `layout` attributes: `trace.visible` is 2720 controlled by `layout.legend.uirevision`, 2721 `selectedpoints` is controlled by 2722 `layout.selectionrevision`, and `colorbar.(x|y)` 2723 (accessible with `config: {editable: true}`) is 2724 controlled by `layout.editrevision`. Trace changes are 2725 tracked by `uid`, which only falls back on trace index 2726 if no `uid` is provided. So if your app can add/remove 2727 traces before the end of the `data` array, such that 2728 the same trace has a different index, you can still 2729 preserve user-driven changes if you give each trace a 2730 `uid` that stays with it as it moves. 2731 unselected 2732 :class:`plotly.graph_objects.box.Unselected` instance 2733 or dict with compatible properties 2734 upperfence 2735 Sets the upper fence values. There should be as many 2736 items as the number of boxes desired. This attribute 2737 has effect only under the q1/median/q3 signature. If 2738 `upperfence` is not provided but a sample (in `y` or 2739 `x`) is set, we compute the lower as the last sample 2740 point above 1.5 times the IQR. 2741 upperfencesrc 2742 Sets the source reference on Chart Studio Cloud for 2743 upperfence . 2744 visible 2745 Determines whether or not this trace is visible. If 2746 "legendonly", the trace is not drawn, but can appear as 2747 a legend item (provided that the legend itself is 2748 visible). 2749 whiskerwidth 2750 Sets the width of the whiskers relative to the box' 2751 width. For example, with 1, the whiskers are as wide as 2752 the box(es). 2753 width 2754 Sets the width of the box in data coordinate If 0 2755 (default value) the width is automatically selected 2756 based on the positions of other box traces in the same 2757 subplot. 2758 x 2759 Sets the x sample data or coordinates. See overview for 2760 more info. 2761 x0 2762 Sets the x coordinate for single-box traces or the 2763 starting coordinate for multi-box traces set using 2764 q1/median/q3. See overview for more info. 2765 xaxis 2766 Sets a reference between this trace's x coordinates and 2767 a 2D cartesian x axis. If "x" (the default value), the 2768 x coordinates refer to `layout.xaxis`. If "x2", the x 2769 coordinates refer to `layout.xaxis2`, and so on. 2770 xcalendar 2771 Sets the calendar system to use with `x` date data. 2772 xperiod 2773 Only relevant when the axis `type` is "date". Sets the 2774 period positioning in milliseconds or "M<n>" on the x 2775 axis. Special values in the form of "M<n>" could be 2776 used to declare the number of months. In this case `n` 2777 must be a positive integer. 2778 xperiod0 2779 Only relevant when the axis `type` is "date". Sets the 2780 base for period positioning in milliseconds or date 2781 string on the x0 axis. When `x0period` is round number 2782 of weeks, the `x0period0` by default would be on a 2783 Sunday i.e. 2000-01-02, otherwise it would be at 2784 2000-01-01. 2785 xperiodalignment 2786 Only relevant when the axis `type` is "date". Sets the 2787 alignment of data points on the x axis. 2788 xsrc 2789 Sets the source reference on Chart Studio Cloud for x 2790 . 2791 y 2792 Sets the y sample data or coordinates. See overview for 2793 more info. 2794 y0 2795 Sets the y coordinate for single-box traces or the 2796 starting coordinate for multi-box traces set using 2797 q1/median/q3. See overview for more info. 2798 yaxis 2799 Sets a reference between this trace's y coordinates and 2800 a 2D cartesian y axis. If "y" (the default value), the 2801 y coordinates refer to `layout.yaxis`. If "y2", the y 2802 coordinates refer to `layout.yaxis2`, and so on. 2803 ycalendar 2804 Sets the calendar system to use with `y` date data. 2805 yperiod 2806 Only relevant when the axis `type` is "date". Sets the 2807 period positioning in milliseconds or "M<n>" on the y 2808 axis. Special values in the form of "M<n>" could be 2809 used to declare the number of months. In this case `n` 2810 must be a positive integer. 2811 yperiod0 2812 Only relevant when the axis `type` is "date". Sets the 2813 base for period positioning in milliseconds or date 2814 string on the y0 axis. When `y0period` is round number 2815 of weeks, the `y0period0` by default would be on a 2816 Sunday i.e. 2000-01-02, otherwise it would be at 2817 2000-01-01. 2818 yperiodalignment 2819 Only relevant when the axis `type` is "date". Sets the 2820 alignment of data points on the y axis. 2821 ysrc 2822 Sets the source reference on Chart Studio Cloud for y 2823 . 2824 2825 Returns 2826 ------- 2827 Box 2828 """ 2829 super(Box, self).__init__("box") 2830 2831 if "_parent" in kwargs: 2832 self._parent = kwargs["_parent"] 2833 return 2834 2835 # Validate arg 2836 # ------------ 2837 if arg is None: 2838 arg = {} 2839 elif isinstance(arg, self.__class__): 2840 arg = arg.to_plotly_json() 2841 elif isinstance(arg, dict): 2842 arg = _copy.copy(arg) 2843 else: 2844 raise ValueError( 2845 """\ 2846The first argument to the plotly.graph_objs.Box 2847constructor must be a dict or 2848an instance of :class:`plotly.graph_objs.Box`""" 2849 ) 2850 2851 # Handle skip_invalid 2852 # ------------------- 2853 self._skip_invalid = kwargs.pop("skip_invalid", False) 2854 self._validate = kwargs.pop("_validate", True) 2855 2856 # Populate data dict with properties 2857 # ---------------------------------- 2858 _v = arg.pop("alignmentgroup", None) 2859 _v = alignmentgroup if alignmentgroup is not None else _v 2860 if _v is not None: 2861 self["alignmentgroup"] = _v 2862 _v = arg.pop("boxmean", None) 2863 _v = boxmean if boxmean is not None else _v 2864 if _v is not None: 2865 self["boxmean"] = _v 2866 _v = arg.pop("boxpoints", None) 2867 _v = boxpoints if boxpoints is not None else _v 2868 if _v is not None: 2869 self["boxpoints"] = _v 2870 _v = arg.pop("customdata", None) 2871 _v = customdata if customdata is not None else _v 2872 if _v is not None: 2873 self["customdata"] = _v 2874 _v = arg.pop("customdatasrc", None) 2875 _v = customdatasrc if customdatasrc is not None else _v 2876 if _v is not None: 2877 self["customdatasrc"] = _v 2878 _v = arg.pop("dx", None) 2879 _v = dx if dx is not None else _v 2880 if _v is not None: 2881 self["dx"] = _v 2882 _v = arg.pop("dy", None) 2883 _v = dy if dy is not None else _v 2884 if _v is not None: 2885 self["dy"] = _v 2886 _v = arg.pop("fillcolor", None) 2887 _v = fillcolor if fillcolor is not None else _v 2888 if _v is not None: 2889 self["fillcolor"] = _v 2890 _v = arg.pop("hoverinfo", None) 2891 _v = hoverinfo if hoverinfo is not None else _v 2892 if _v is not None: 2893 self["hoverinfo"] = _v 2894 _v = arg.pop("hoverinfosrc", None) 2895 _v = hoverinfosrc if hoverinfosrc is not None else _v 2896 if _v is not None: 2897 self["hoverinfosrc"] = _v 2898 _v = arg.pop("hoverlabel", None) 2899 _v = hoverlabel if hoverlabel is not None else _v 2900 if _v is not None: 2901 self["hoverlabel"] = _v 2902 _v = arg.pop("hoveron", None) 2903 _v = hoveron if hoveron is not None else _v 2904 if _v is not None: 2905 self["hoveron"] = _v 2906 _v = arg.pop("hovertemplate", None) 2907 _v = hovertemplate if hovertemplate is not None else _v 2908 if _v is not None: 2909 self["hovertemplate"] = _v 2910 _v = arg.pop("hovertemplatesrc", None) 2911 _v = hovertemplatesrc if hovertemplatesrc is not None else _v 2912 if _v is not None: 2913 self["hovertemplatesrc"] = _v 2914 _v = arg.pop("hovertext", None) 2915 _v = hovertext if hovertext is not None else _v 2916 if _v is not None: 2917 self["hovertext"] = _v 2918 _v = arg.pop("hovertextsrc", None) 2919 _v = hovertextsrc if hovertextsrc is not None else _v 2920 if _v is not None: 2921 self["hovertextsrc"] = _v 2922 _v = arg.pop("ids", None) 2923 _v = ids if ids is not None else _v 2924 if _v is not None: 2925 self["ids"] = _v 2926 _v = arg.pop("idssrc", None) 2927 _v = idssrc if idssrc is not None else _v 2928 if _v is not None: 2929 self["idssrc"] = _v 2930 _v = arg.pop("jitter", None) 2931 _v = jitter if jitter is not None else _v 2932 if _v is not None: 2933 self["jitter"] = _v 2934 _v = arg.pop("legendgroup", None) 2935 _v = legendgroup if legendgroup is not None else _v 2936 if _v is not None: 2937 self["legendgroup"] = _v 2938 _v = arg.pop("line", None) 2939 _v = line if line is not None else _v 2940 if _v is not None: 2941 self["line"] = _v 2942 _v = arg.pop("lowerfence", None) 2943 _v = lowerfence if lowerfence is not None else _v 2944 if _v is not None: 2945 self["lowerfence"] = _v 2946 _v = arg.pop("lowerfencesrc", None) 2947 _v = lowerfencesrc if lowerfencesrc is not None else _v 2948 if _v is not None: 2949 self["lowerfencesrc"] = _v 2950 _v = arg.pop("marker", None) 2951 _v = marker if marker is not None else _v 2952 if _v is not None: 2953 self["marker"] = _v 2954 _v = arg.pop("mean", None) 2955 _v = mean if mean is not None else _v 2956 if _v is not None: 2957 self["mean"] = _v 2958 _v = arg.pop("meansrc", None) 2959 _v = meansrc if meansrc is not None else _v 2960 if _v is not None: 2961 self["meansrc"] = _v 2962 _v = arg.pop("median", None) 2963 _v = median if median is not None else _v 2964 if _v is not None: 2965 self["median"] = _v 2966 _v = arg.pop("mediansrc", None) 2967 _v = mediansrc if mediansrc is not None else _v 2968 if _v is not None: 2969 self["mediansrc"] = _v 2970 _v = arg.pop("meta", None) 2971 _v = meta if meta is not None else _v 2972 if _v is not None: 2973 self["meta"] = _v 2974 _v = arg.pop("metasrc", None) 2975 _v = metasrc if metasrc is not None else _v 2976 if _v is not None: 2977 self["metasrc"] = _v 2978 _v = arg.pop("name", None) 2979 _v = name if name is not None else _v 2980 if _v is not None: 2981 self["name"] = _v 2982 _v = arg.pop("notched", None) 2983 _v = notched if notched is not None else _v 2984 if _v is not None: 2985 self["notched"] = _v 2986 _v = arg.pop("notchspan", None) 2987 _v = notchspan if notchspan is not None else _v 2988 if _v is not None: 2989 self["notchspan"] = _v 2990 _v = arg.pop("notchspansrc", None) 2991 _v = notchspansrc if notchspansrc is not None else _v 2992 if _v is not None: 2993 self["notchspansrc"] = _v 2994 _v = arg.pop("notchwidth", None) 2995 _v = notchwidth if notchwidth is not None else _v 2996 if _v is not None: 2997 self["notchwidth"] = _v 2998 _v = arg.pop("offsetgroup", None) 2999 _v = offsetgroup if offsetgroup is not None else _v 3000 if _v is not None: 3001 self["offsetgroup"] = _v 3002 _v = arg.pop("opacity", None) 3003 _v = opacity if opacity is not None else _v 3004 if _v is not None: 3005 self["opacity"] = _v 3006 _v = arg.pop("orientation", None) 3007 _v = orientation if orientation is not None else _v 3008 if _v is not None: 3009 self["orientation"] = _v 3010 _v = arg.pop("pointpos", None) 3011 _v = pointpos if pointpos is not None else _v 3012 if _v is not None: 3013 self["pointpos"] = _v 3014 _v = arg.pop("q1", None) 3015 _v = q1 if q1 is not None else _v 3016 if _v is not None: 3017 self["q1"] = _v 3018 _v = arg.pop("q1src", None) 3019 _v = q1src if q1src is not None else _v 3020 if _v is not None: 3021 self["q1src"] = _v 3022 _v = arg.pop("q3", None) 3023 _v = q3 if q3 is not None else _v 3024 if _v is not None: 3025 self["q3"] = _v 3026 _v = arg.pop("q3src", None) 3027 _v = q3src if q3src is not None else _v 3028 if _v is not None: 3029 self["q3src"] = _v 3030 _v = arg.pop("quartilemethod", None) 3031 _v = quartilemethod if quartilemethod is not None else _v 3032 if _v is not None: 3033 self["quartilemethod"] = _v 3034 _v = arg.pop("sd", None) 3035 _v = sd if sd is not None else _v 3036 if _v is not None: 3037 self["sd"] = _v 3038 _v = arg.pop("sdsrc", None) 3039 _v = sdsrc if sdsrc is not None else _v 3040 if _v is not None: 3041 self["sdsrc"] = _v 3042 _v = arg.pop("selected", None) 3043 _v = selected if selected is not None else _v 3044 if _v is not None: 3045 self["selected"] = _v 3046 _v = arg.pop("selectedpoints", None) 3047 _v = selectedpoints if selectedpoints is not None else _v 3048 if _v is not None: 3049 self["selectedpoints"] = _v 3050 _v = arg.pop("showlegend", None) 3051 _v = showlegend if showlegend is not None else _v 3052 if _v is not None: 3053 self["showlegend"] = _v 3054 _v = arg.pop("stream", None) 3055 _v = stream if stream is not None else _v 3056 if _v is not None: 3057 self["stream"] = _v 3058 _v = arg.pop("text", None) 3059 _v = text if text is not None else _v 3060 if _v is not None: 3061 self["text"] = _v 3062 _v = arg.pop("textsrc", None) 3063 _v = textsrc if textsrc is not None else _v 3064 if _v is not None: 3065 self["textsrc"] = _v 3066 _v = arg.pop("uid", None) 3067 _v = uid if uid is not None else _v 3068 if _v is not None: 3069 self["uid"] = _v 3070 _v = arg.pop("uirevision", None) 3071 _v = uirevision if uirevision is not None else _v 3072 if _v is not None: 3073 self["uirevision"] = _v 3074 _v = arg.pop("unselected", None) 3075 _v = unselected if unselected is not None else _v 3076 if _v is not None: 3077 self["unselected"] = _v 3078 _v = arg.pop("upperfence", None) 3079 _v = upperfence if upperfence is not None else _v 3080 if _v is not None: 3081 self["upperfence"] = _v 3082 _v = arg.pop("upperfencesrc", None) 3083 _v = upperfencesrc if upperfencesrc is not None else _v 3084 if _v is not None: 3085 self["upperfencesrc"] = _v 3086 _v = arg.pop("visible", None) 3087 _v = visible if visible is not None else _v 3088 if _v is not None: 3089 self["visible"] = _v 3090 _v = arg.pop("whiskerwidth", None) 3091 _v = whiskerwidth if whiskerwidth is not None else _v 3092 if _v is not None: 3093 self["whiskerwidth"] = _v 3094 _v = arg.pop("width", None) 3095 _v = width if width is not None else _v 3096 if _v is not None: 3097 self["width"] = _v 3098 _v = arg.pop("x", None) 3099 _v = x if x is not None else _v 3100 if _v is not None: 3101 self["x"] = _v 3102 _v = arg.pop("x0", None) 3103 _v = x0 if x0 is not None else _v 3104 if _v is not None: 3105 self["x0"] = _v 3106 _v = arg.pop("xaxis", None) 3107 _v = xaxis if xaxis is not None else _v 3108 if _v is not None: 3109 self["xaxis"] = _v 3110 _v = arg.pop("xcalendar", None) 3111 _v = xcalendar if xcalendar is not None else _v 3112 if _v is not None: 3113 self["xcalendar"] = _v 3114 _v = arg.pop("xperiod", None) 3115 _v = xperiod if xperiod is not None else _v 3116 if _v is not None: 3117 self["xperiod"] = _v 3118 _v = arg.pop("xperiod0", None) 3119 _v = xperiod0 if xperiod0 is not None else _v 3120 if _v is not None: 3121 self["xperiod0"] = _v 3122 _v = arg.pop("xperiodalignment", None) 3123 _v = xperiodalignment if xperiodalignment is not None else _v 3124 if _v is not None: 3125 self["xperiodalignment"] = _v 3126 _v = arg.pop("xsrc", None) 3127 _v = xsrc if xsrc is not None else _v 3128 if _v is not None: 3129 self["xsrc"] = _v 3130 _v = arg.pop("y", None) 3131 _v = y if y is not None else _v 3132 if _v is not None: 3133 self["y"] = _v 3134 _v = arg.pop("y0", None) 3135 _v = y0 if y0 is not None else _v 3136 if _v is not None: 3137 self["y0"] = _v 3138 _v = arg.pop("yaxis", None) 3139 _v = yaxis if yaxis is not None else _v 3140 if _v is not None: 3141 self["yaxis"] = _v 3142 _v = arg.pop("ycalendar", None) 3143 _v = ycalendar if ycalendar is not None else _v 3144 if _v is not None: 3145 self["ycalendar"] = _v 3146 _v = arg.pop("yperiod", None) 3147 _v = yperiod if yperiod is not None else _v 3148 if _v is not None: 3149 self["yperiod"] = _v 3150 _v = arg.pop("yperiod0", None) 3151 _v = yperiod0 if yperiod0 is not None else _v 3152 if _v is not None: 3153 self["yperiod0"] = _v 3154 _v = arg.pop("yperiodalignment", None) 3155 _v = yperiodalignment if yperiodalignment is not None else _v 3156 if _v is not None: 3157 self["yperiodalignment"] = _v 3158 _v = arg.pop("ysrc", None) 3159 _v = ysrc if ysrc is not None else _v 3160 if _v is not None: 3161 self["ysrc"] = _v 3162 3163 # Read-only literals 3164 # ------------------ 3165 3166 self._props["type"] = "box" 3167 arg.pop("type", None) 3168 3169 # Process unknown kwargs 3170 # ---------------------- 3171 self._process_kwargs(**dict(arg, **kwargs)) 3172 3173 # Reset skip_invalid 3174 # ------------------ 3175 self._skip_invalid = False 3176